Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по PHP.doc
Скачиваний:
198
Добавлен:
04.06.2015
Размер:
2.76 Mб
Скачать

Strtotime(дата_время, число);

- число– необязательный числовой параметр; если он указан, то функция возвращает количество секунд относительно его значения, если не указан – то относительно текущего времени,

- дата_время– строка, в которой можно использовать следующиеключевые слована английском языке:

- названия месяцев и дней недели полностью или в трехбуквенном сокращении,

- названия элементов даты и времени:

year

month

week

day

hour

minute

second

- слова:

ago– тому назад

now – сейчас

last – последний

next – следующий

this – этот

tomorrow – завтра

yesterday – вчера

- числа и знаки плюсиминус,

- временную зону gmt.

Примеры:

strtotime(“now”)– текущее время,

strtotime(“now + 48 hour”)– через два дня от текущего времени,

strtotime(“3 month ago”)– три месяца назад,

strtotime(“last Friday”)– предыдущая пятница,

strtotime(“next year”) – через год,

strtotime(“1949/09/19”)– 19.09.1949 00:00:00.

При возникновении ошибки преобразования функция возвращает -1.

Для проверки корректности введенной даты используется функция checkdate(месяц, день, год).Она возвращаетtrue, если значениемесяцанаходится между 1и12, значениедняприемлемо для данного месяца и года (учитывая високосный год), а значениегоданаходится между0и32767.

Функции

Функция– это конструкция, которая позволяет оформить блок программного кода

для многократного его использования.

Такой блок кода имеет свое уникальное имясо спискомформальныхпараметров– переменных, реализующих алгоритм вычисления этой функции. Вычисленное значение функции возвращается в вызывающую программу операторомreturn.

Пример функций – математические функции PHP.

Пользовательскиефункции – это функции, определяемые самим программистом.

Структура функции:

function имя(список формальных параметров)

{

тело функции – операторы, реализующие алгоритм ее работы

return переменная или выражение;

}

Имя функции выбирается так же, как и имя переменной, только перед ним не ставитсясимвол$.Недопустимоиспользование в качестве имени функции имен математических функций и ключевых (служебных) словPHP.

Создадим функцию, вычисляющую сумму двух переменных:

function summa($x, $y) // $x, $y – формальные параметры

{

$z = $x + $y; // $z – локальная переменная

return $z; // возвращение результата вычислений

}

Если строки return $z в функции нет, то онаничего не вернетв вызывающую программу.

Функции располагаются, как правило, в начале программы:

<&php

function summa($x, $y) // $x, $y – формальные параметры

{

$z = $x + $y; // $z – локальная переменная

return $z;

}

$a = 3;

$b = 5;

$c = summa($a, $b); // обращение к функции

echo ‘Сумма = ‘, $c, “<BR>”; // $c=8

?>

Фактические параметры (исходные данные) передаются в функцию по значению. Это означает, что если внутри функции формальные параметры, соответствующие этим фактическим, изменяют свои значения, тофактические параметрыне изменяются:

<&php

function summa($x, $y) // $x, $y – формальные параметры

{

$x++;

$y++;

$z = $x + $y; // $z – локальная переменная

return $z;

}

$a = 3;

$b = 5;

$c = summa($a, $b); // обращение к функции

echo ‘Сумма = ‘, $c, “<BR>”; // $c=10

echo $a, “<BR>”; // $a=3

echo $b, “<BR>”; // $b=5

?>

Чтобы изменения параметров, выполненные внутри функции, были видны и за ее пределами, их необходимо передавать по ссылке (адресу переменной). Для этого в списке формальных параметров перед их именами ставится символ&:

<&php

function summa(&$x, &$y) // &$x, &$y – ссылки

{

$x++;

$y++;

$z = $x + $y; // $z – локальная переменная

return $z;

}

$a = 3;

$b = 5;

$c = summa($a, $b); // обращение к функции

echo ‘Сумма = ‘, $c, “<BR>”; // $c=10

echo $a, “<BR>”; // $a=4

echo $b, “<BR>”; // $b=6

?>

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

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

function self_count()

{

static $count = 0; // статическая переменная

$count++;

echo $count;

}

При первомобращении к функции статическая переменная принимаетначальноезначение. При каждом последующем обращении она изменяется.

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

<&php

function summa($x, $y) // $x, $y – формальные параметры

{

$z = $x + $y; // $z – локальная переменная

return $z;

}

$name = “summa”; // переменной присвоено имя функции

$a = 3;

$b = 5;

$c = $name($a, $b); // обращение к переменной как к функции

echo ‘Сумма = ‘, $c, “<BR>”; // $c=8

?>

Имена функций можно хранить в массивах:

<?php

function my_func($a)

{

return $a*$a;

}

$func_array=array

(

"sqrt",

"ceil",

"floor",

"round",

"my_func"

);

$x=3.14159265;

echo "Значение х равно $x", "<BR>";

foreach($func_array as $value)

{

echo $value, ' = ',$value($x), "<BR>";

}

echo "<BR>";

?>

На экран будет выведено:

Значение х равно 3.14159265 sqrt = 1.7724538498929 ceil = 4 floor = 3 round = 3 my_func = 9.869604378534