Справочник по PHP - [2]

Шрифт
Интервал

>function foo() {

> return array (0, 1, 2);

>}

>list ($zero, $one, $two) = foo();


Аргументы:

Информация может быть передана функции через список аргументов, которые являются разделенным запятыми списком переменных и/или констант.

Списки аргументов переменной длины не поддерживаются, но того же можно достичь, передавая массивы.

>function takes_array($input) {

> echo "$input[0] + $input[1] = ", $input[0]+$input[1];

>}


Передача по ссылке:

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

>function foo( &$bar) {

> $bar .= "и добавочная строка.";

>}

>$str = "Это строка, ";

>foo($str);

>echo $str; // выведет : "Это строка, и добавочная строка."


>function foo($bar) {

> $bar .= "и добавочная строка.";

>}

>$str = "Это строка, ";

>foo($str);

>echo $str; //выведет : "Это строка, "

>foo(&$str);

>echo $str; //выведет : "Это строка, и добавочная строка."


Значения по умолчанию:

Значение по умолчанию должно быть константой, а не переменной или членом класса.

>function day ($type = "понедельник") {

> echo "Сегодня $type.";

>}

>echo day(); //выведет : Сегодня понедельник.

>echo day("вторник"); //выведет : Сегодня вторник.


Аргументы по умолчанию при описании должны находиться справо от остальных аргументов.

>function day($day_num, $type = "понедельник") {

> return "Сегодня $day_num - $type.";

>}



old_function


Оператор OLD_FUNCTION позволяет вам определяить функцию используя синтаксис PHP/FI2 (за исключением того, что вы должны заменить "function" на "old_function").

Это свойство только для совместимости и должно использоваться лишь конверторами PHP/FI2 - PHP3. Описанные таким образом функции не могут быть вызваны из служебного кода PHP. Вы можете обойти это путем введения специальной функции в терминах PHP3, которая будет вызывать OLD_FUNCTION.


class


Набор переменных и функций, работающих с этими переменными.

>

>class Cart {

> var $items; // Количество вещей в корзине покупателя

> // Добавить $num наименований типа $artnr в корзину

> function add_item ($artnr, $num) {

> $this->items[$artnr] += $num;

> }

> // Убрать $num наименований $artnr из корзины

> function remove_item ($artnr, $num) {

> if ($this->items[$artnr] > $num) {

> $this->items[$artnr] -= $num;

> return true;

> } else {

> return false;

> }

> }

>}

?>

Классы это типы, то есть, заготовки для реальных переменных. Вы должны создавать переменные желаемого типа, используя оператор new:

>$cart = new Cart;

>$cart->add_item("10", 1);


Классы могут быть расширениями других классов. Расширенный класс обладает всеми переменными и функциями базового класса и тем, что вы определите при расширении класса. Это делается используя ключевое слово extends :

>class Named_Cart extends Cart {

> var $owner;

> function set_owner ($name) {

> $this->owner = $name;

> }

>}


Это определяет класс Named_Cart, который имеет все переменные и функции класса Cart плюс дополнительную переменную $owner и дополнительную функцию set_owner(). Вы можете создать поименованую корзину обычным образом и установить или получить владельца корзины. Также вы можете использовать и нормальные функции корзины в поименованой корзине :

>$ncart = new Named_Cart; //Создать корзину

>$ncart->set_owner ("kris");//Указать владельцаprint

>$ncart->owner; //Распечатать имя владельца корзины

>$ncart->add_item ("10", 1);//унаследовано из обычной корзины


Функции работы с данными

Математические функции

Функции округления


abs


Возвращает модуль числа.

Синтаксис:

mixed abs(mixed $number)

Тип параметра $number может быть float или int, а ти п возвращаемого значения всегда совпадает с типом этого параметра.

>$x = abs(-4); // $x=4

>$x = abs(-7.45); // $x=7.45



round


Округление дробного числа до целого.

Синтаксис:

double round(double $val)

Округляет $val до ближайшего целого и возвращает результат.

>$foo = round(3.4); // $foo == 3.0

>$foo = round(3.5); // $foo == 4.0

>$foo = round(3.6); // $foo == 4.0


>$x = round(5.3); // $x=5

>$x = round(5.4); // $x=5

>$x = round(5.45); // $x=5

>$x = round(5.5); // $x=6



ceil


Дополнение дробного числа до следующего целого.

Синтаксис:

int ceil(float $number)

Возвращает наименьшее целое число, не меньше $number. Разумеется, передавать в $number целое число бессмысленно.

>$x = ceil(5.0); // $x=5

>$x = ceil(5.1); // $x=6

>$x = ceil(5.9); // $x=6



floor


Удаление дробной части числа.

Синтаксис:

int floor(float $number)

Возвращает максимальное целое число, не превосходящее $number.

>$x = floor(5.1); // $x=5

>$x = floor(5.9); // $x=5


Случайные числа


srand


Производит инициализацию генератора случайных чисел.

Синтаксис:

void srand(int seed)

Инициализирует генератор случайных чисел занчением seed.

>srand((double) microtime()*1000000);

>$random = rand();

>echo $random;



getrandmax


Возвращает максимально возможное случайное число.

Синтаксис:

int getrandmax()

Эта функция возвращает максимальное значение, которое можно получить при помощи функции генерации случайных чисел rand().

Обычно это 32767


rand


Производит генерацию случайного числа.

Синтаксис:

int rand([int max [, int min]])


Еще от автора Неизвестный Автор
Галчонок

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


Призраки ночи

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


Закат  вечности

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


mmmavro.org | День 131, Победа

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


mmmavro.org | День 132, Поэт

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


Песнь о Нибелунгах

…«Песнь о Нибелунгах» принадлежит к числу наиболее известных эпических произведений человечества. Она находится в кругу таких творений, как поэмы Гомера и «Песнь о Роланде», «Слово о полку Игореве» и «Божественная комедия» Данте — если оставаться в пределе европейских литератур…В. Г. Адмони.


Рекомендуем почитать
Российские деятели украинского происхождения

В Справочнике приведены краткие биографии около 1400 российских деятелей украинского происхождения, внёсших свой вклад в развитие России. В нём помещены статьи о государственных, политических, общественных и церковных деятелях, революционерах, декабристах, полководцах, флотоводцах и военачальниках, героях войн, космонавтах, писателях, художниках, скульпторах, архитекторах, артистах театра и кино, режиссёрах, композиторах, искусствоведах, спортсменах, учёных, создателях новых технологий и техники.             Справочник через биографии деятелей освещает историю Украины и России за период с 1654 г.


Германские пехотные противотанковые средства ближнего боя

В брошюре даны описания и способы применения пехотных противотанковых средств немецкой армии, захваченных нашими войсками. Брошюра поможет нашим бойцам и командирам научиться применять эти средства против танков противника. Настоящее пособие составлено инженер-полковником Клюевым при участии инженер-полковника Панкратьева.


Монеты Китая первой половины XX века. Часть 1.

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


713 секретов производственных технологий

Форматирование файла не завершено (Stribog).Эти не только древние, но и интересные рецепты не потеряли актуальности и в нынешнее время. Правда, хочу заметить, что не все из них безопасны. Особенно те, где используется ртуть и соли тяжелых металлов (в частности это касается раздела «Парфюмерия»). Так что думайте Сами.С уважением, Сергей Каштанов.


Противотанковая мина ТМ-72 и минный взрыватель МВН-72

Руководство предназначается для изучения тактико-технических характеристик, устройства принципа действия, правил применения, хранения и транспортировки противотанковой мины ТМ-72 и минного взрывателя МВН-72.


Учимся читать в три раза быстрее за 20 минут - Лайфхакер

rufb2edit 0.0.908 сен 2015http://lifehacker.ru/2015/01/22/chitat-v-3-raza-bystree/web2fb2_201509080815_87756238791.0Учимся читать в три раза быстрее за 20 минут - ЛайфхакерИя Зорина 22 января 2015Учимся читать в три раза быстрее за 20 минутУмение быстро читать освобождает кучу свободного времени. Только представьте, вы можете в три раза быстрее справляться со всей литературой — технической, профессиональной или художественной. А теперь приятная новость: в отличие от большинства навыков, которые нужно осваивать постепенно, скорочтение доступно вам уже через 20 минут тренировки.