Читаем Справочник по PHP онлайн бесплатно
Справочник по PHP
Вниманию читателей предлагается справочник по PHP.Справочник предназначается для людей, уже освоивших азы программирования на языке PHP.Справочник создан на основе информации, предоставленной на сайте «Справочник Web-языков».
Компьютеры и Интернет / Зарубежная компьютерная, околокомпьютерная литератураСправочник предназначается для людей, уже освоивших азы программирования на языке PHP.
Справочник создан на основе информации, предоставленной на сайте «Справочник Web-языков» www.spravkaweb.ru.
В связи с тем, что данный ресурс постоянно пополняется новой информацией, скачать обновленную версию справочника можно из раздела Download
http://www.spravkaweb.ru/download.php?user=help_php
Дата выхода данной версии справочника: 06:40, 25 марта 2007.
Также на сайте доступны для скачивания справочники по CSS, Perl, MySQL.
if
Позволяет организовывать выполнение фрагментов кода по условию.
Синтаксис :
if (выражение) statement
Может иметь неограниченную степень вложенности в другие IF.
if($a > $b) print "$a больше $b";
if($a > $b) {
echo "$a больше $b;
$b=$a;
}
?>
else
Расширяет возможности IF по части обработки вариантов выражения, когда оно равно FALSE.
Выражение ELSE выполняется только если IF равно FALSE.
if($a>$b) {
echo "a больше b";
} else {
echo "a меньше b";
}
elseif
Является комбинацией IF и ELSE. Позволяет выполнить выражение, если значение IF равно FALSE, но в отличии от ELSE оно выполниться, если выражение ELSEIF равно TRUE.
if ($a > $b) {
echo "a больше b";
} elseif ($a == $b) {
echo "a равно b";
} else {
echo "a меньше b";
}
if ... endif
Один из возможных вариантов группирования операторов с оператором IF.
Удобно при внедрении больших блоков HTML-кода внутрь оператора IF.
if ($a == 1):
echo "a равно 1";
elseif ($a == 2):
echo "a равно 2";
else:
echo "а не равно 1 и 2";
endif;
A=5
Блок HTML-кода A=5 будет виден, если выполнется условие $a==5
while
Простейший тип цикла в PHP. Заставляет PHP выполнять вложенные операторы до тех пор, пока условие равно TRUE. Если условие равно FALSE с самого начала, то цикл не выполнится не разу.
Синтаксис:
WHILE(условие)выражения
Можно сгруппировать несколько операторов внутри фигурных скобок или использовать альтернативный синтаксис :WHILE(условие)выражения... ENDWHILE;
$a=1;
while ($a <= 5) {
echo $a++;
}
?>
$a = 1;
while($a <= 5):
echo $a;
$a++;
endwhile;
?>
- Эти два примера выводят номера с 1 до 5.
do_while
Цикл, аналогичный WHILE, но значение логического выражения проверяется не до, а после окончания итерации. Основное отличие - то что цикл хоть один раз но выполнится.
$a = 1;
do {
echo $a;
} while ($a > 1);
?>
Можно прекратить использовать блок операторов в середине путем внедрения оператора BREAK в цикл DO..WHILE(0) :
do {
if ($a == 5) {
echo "A равно 5"
break;
}
$a *= $b;
if ($a < $minimum) {
break;
}
echo "A равен $a";
} while(0);
?>
for
Наиболее мощный цикл в PHP.
Синтаксис:
FOR (условие1; условие2; условие3)выражения
(условие2 - Проверяется в начале каждой итерации. Если оно равно TRUE, то цикл продолжается и выполняются вложенные операторы. Если оно равно FALSE, то цикл заканчивается.(условие3 - Выполняется (вычисляется) в конце каждой итерации.
Каждое из этих условий может быть пустым.
Пример1:
for ($a = 1; $a <= 5; $a++) {
echo $a;
}
Пример 2:
for ($a = 1;;$a++) {
if ($a > 5) {
break;
}
echo $a;
}
Пример 3:
$a = 1;
for (;;) {
if ($a > 5) {
break;
}
print $a;
$a++;
}
Пример 4:
for ($a = 1; $a <= 5; print $a, $a++);
PHP поддерживает альтернативный синтаксис FOR:
FOR(усл1; уcл2; усл3;):операторы;...;ENDFOR;
break
Прерывает выполнение текущего цикла.
Пример:
$a = 0;
while ($a < 5) {
if ($arr[$a] == "stop") {
break;
}
$a++;
}
continue
Переходит на начало ближайшего цикла.
while (list($key,$value) = each($arr)) {
if ($key % 2) {
continue;
}
do_something_odd ($value);
}
?>
switch
Сравнивает переменную или выражение с различными значениями и выполняет различные фрагменты кода в зависимости от того, чему будет равно значение выражения.
switch ($a) {
case 0:
echo "A равно 0";
break;
case 1:
echo "A равно 1";
break;
case 2:
echo "A равно 2";
break;
default:
echo "A не равно 0, 1, 2";
}
?>
require
Заменяет себя содержимым указанного файла.
Пример:
require("include.inc");
Но его нельзя поместить внутрь цикла и ожидать, что он включит содержимое другого файла несколько раз в процессе каждой итерации. Для этого есть INCLUDE.
include
Вставляет и выполняет содержимое указанного файла.
$files = array ("first.inc", "second.inc", "third.inc");
for ($a = 0; $a < count($files); $a++) {
include($files[$a]);
}
?>
Так как INCLUDE() это специальный оператор, требуется заключать его в фигурные скобки при использовании внутри условного оператора.
if ($a < 5) {
include("file_1.inc");
} else {
include("file_2.inc");
}
?>
function
Объявление функции.
Внутри функции может быть любой верный код PHP, даже объявление другой функции или класса. Функции должны быть объявлены перед тем, как на них ссылаться.
function foo ($arg_1, $arg_2, ..., $arg_n) {
echo "Пример функции.";
return $retvalue;
}
?>
Возвращение результатов:
function my_sqrt ($num) {
return $num * $num;
}
echo my_sqrt(4); //выведет 16
?>
Множественные результаты не могут быть возвращены в качестве результата, но вы можете реализовать это путем возврата списка:
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 плюс дополнительную переменную
$ncart = new Named_Cart; //Создать корзину
$ncart->set_owner ("kris");//Указать владельцаprint
$ncart->owner; //Распечатать имя владельца корзины
$ncart->add_item ("10", 1);//унаследовано из обычной корзины
abs
Возвращает модуль числа.
Синтаксис:
mixed abs(mixed $number)
Тип параметра
$x = abs(-4); // $x=4
$x = abs(-7.45); // $x=7.45
round
Округление дробного числа до целого.
Синтаксис:
double round(double $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)
Возвращает наименьшее целое число, не меньше
$x = ceil(5.0); // $x=5
$x = ceil(5.1); // $x=6
$x = ceil(5.9); // $x=6
floor
Удаление дробной части числа.
Синтаксис:
int floor(float $number)
Возвращает максимальное целое число, не превосходящее
$x = floor(5.1); // $x=5
$x = floor(5.9); // $x=5
srand
Производит инициализацию генератора случайных чисел.
Синтаксис:
void srand(int seed)
Инициализирует генератор случайных чисел занчением
srand((double) microtime()*1000000);
$random = rand();
echo $random;
getrandmax
Возвращает максимально возможное случайное число.
Синтаксис:
int getrandmax()
Эта функция возвращает максимальное значение, которое можно получить при помощи функции генерации случайных чисел rand().
Обычно это 32767
rand
Производит генерацию случайного числа.
Синтаксис:
int rand([int max [, int min]])
При вызове с необязательными параметрами
Если параметры
Для корректной работы данной функции перед ее использованием нужно проинициализировать генератор случайных чисел функцией srand().
mt_rand
Функция возвращает MT-случайное число, достаточно равномерно даже для того, чтобы использовать его в криптографии.
Синтаксис:
int mt_rand(int $min=0, int $max=RAND_MAX)
Если вы хотите генерировать числа не от
mt_srand(time()+(double)microtime()*1000000);
$x = mt_rand(1,100); // $x - значение от 1 до 100
mt_srand
Настраивает MT-генератор случайных чисел на новую последовательность.
Синтаксис:
void mt_srand(int seed)





