Пользовательские функции в языках программирования подобны математическим. Все знают квадратичную фунцию:

y=2x

Пользовательская функция как функция с точки зрения программирования

Пользовательские функции предусмотрены для быстрой типичной обработкий каких-либо переменных, будь то текст или число.

Общий вид структуры создания функций:
function Название_функции ( переменная параметр, переменная параметр)
{
return значение_возвращаемое_функцией;
}

у функции может быть как один так и несколько параметров, а так же может быть и не одного. Тогда скобки будут пустыми ().

Пример
для быстрого подсчёта квадрата какого-либо числа в PHP можно написать функцию.

<?
function s2($a) // s2 - вторая степень
{
   return $a*$a; // оператор return возвращает значение результата операции в место вызова функции в теле программы.
}

chislo=4;
echo "Квадтрат числа ".$chislo." будет ". s2($chislo);
?>

s2($chislo) - это место вызова функции, в место которой и будет присвоен результат выполнения функции.
В данном контексте создании отдельной функции, заменяющей операцию умножения, конечно же не оправдано. Просто это яркий простой пример созданию функций.

Давайте рассмотрим пример создания функции обработки строковой переменной.
Например перед нами задача приведения какой-либо страки к виду, где пробелы заменены знаком подчёркивания, а заглавные буквы прописными. В этом случае удобнее написать функцию, чем каждый раз применять две функции, указывая нужные настройки.

<?
   function mystr($str)
   {
       return strtolower( str_replace(' ','_',$str) );
   }

echo mystr('Dirty Sticky Flour');
?>

Результатом выполнения php скрипту будет выведеный текст: dirty_sticky_flour