CREATE OR REPLACE FUNCTION function_name (
    parameter1 [IN | OUT] datatype1 ,
    parameter2 [IN | OUT] datatype2 ,
    ...
) RETURN return_datatype IS
[DECLARE]
-- declare part
BEGIN
    -- function body
    RETURN result;
END;
/

Example: CREATE OR REPLACE FUNCTION string_length (
             input_string VARCHAR2
         ) RETURN NUMBER IS
         BEGIN
             RETURN LENGTH(input_string);
         END;
         /