abuzov.com » PHP » Самоучитель PHP для начинающих » 6. Функции в PHP
6. Функции в PHP

Функции, опять вспоминается что-то из школьного курса. Функция, аргумент функции.. Итак.

В PHP существуют встроенные и пользовательские функции.

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

В пользовательской функции перед именем должно идти ключевое слово function, которое указывает на то, что мы объявляем свою функцию.

functionName(parmetr); //для встроенных функций

function functionName(parmetr); //для пользовательских функций

Не нужно стремиться запомнить все встроенные функции, для этого существует список встроенных функций PHP.

Встроенные функции

Встроенных функций много. Это огромный плюс языка PHP.

В качестве примера рассмотрим встроенную функцию str_replace.
Эта функция работает со строками. Она заменяет все символы которые нужно найти $search нужными нам символами $replace, при этом замена происходит в строке $subject.

str_replace ($search, $replace, $subject);

Например. У нас есть тестовая строка «Lorem ipsum dolor sit amet», в ней требуется заменить все буквы i на I. Для этого мы:

<?php
$subject = 'Lorem ipsum dolor sit amet';
// присваиваем переменной $subject нашу строку
// используем функцию вывода echo, затем функцию str_replace, а в ней
// задаем что искать (i), на что менять (I) и где менять ($subject)
echo str_replace('i', 'I', $subject);
?>

Результат выполнения функции:

Lorem Ipsum dolor sIt amet

Пользуясь документацией, ссылку на которую я приводил выше, вы сможете со временем самостоятельно изучить все встроенные функции PHP.

Пользовательские функции

Вы можете писать функции самостоятельно, базовая конструкция пользовательских функций  имеет вид:

function functionName(parmetr1, parmetr2){
тело функции;
return результат;
}

Нужно запомнить, что:

  1. пользовательская функция начинается со слова function, только в этом случае PHP определяет дальнейший код как функцию;
  2. у функции обязательно должно быть имя;
  3. у всех функций должны быть разные имена и имя вашей функции не может называться так же, как и встроенная в PHP функция;
  4. имя функции должно начинаться с буквы или символа нижнего подчеркивания _;
  5. у функции должны быть параметры (аргументы), их может быть любое количество, в том числе 0, если аргументов 0, то указываются пустые скобки ();
  6. функция может возвращать что-либо, тогда указывается ключевое слово return, а может и не возвращать.

Давайте напишем свою первую простейшую функцию которая будет прибавлять к числу, число 8 и посмотрим как она работает:

<?php
function plus8($x){
$x = $x + 8;
return $x;
}
$y = 10;
echo plus8($y);
?>

В данном коде мы:

  • объявляем функцию function с именем plus8 и аргументом $x;
  • в теле функции {} прописываем, что к аргументу нам нужно прибавить число 8 $x = $x + 8;;
  • возвращаем полученный результат return $x;

Далее мы объявляем переменную $y которой присваиваем значение 10.

После чего с помощью echo выводим на экран значение функции с аргументом $y: plus8($y);, результатом буде 10 + 8, то есть число 18.

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

Функция с тремя аргументами, возвращающая минимальное значение.

<?php
function minArgument($x, $y, $z){
return min($x, $y, $z);
}
$x = -8;
$y = 10;
$z = -55;
echo minArgument($x, $y, $z);
?>

Если у вас остались вопросы по теме, не забудьте задать их в комментариях.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Вы можете испольовать HTML теги и их атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">