Новая программерская баннерная сеть Vingrad Banner Network! Вступайте!
Поиск:
Версия для печати   Версия для печати

Краткий справочник по PHP

Выражения
IF Синтаксис :
if (выражение) statement
Пример 1:
if($a>$b)
  print "$a больше $b";
Пример 2:
if($a>$b){echo "$a больше $b;$b=$a;}
Позволяет организовывать выполнение фрагментов кода по условию. Может иметь неограниченную степень вложенности в другие IF.
ELSE Пример :
if ($a>$b) {
  echo "a больше b";
} else {
  echo "a меньше b";
}
Расширяет возможности IF по части обработки вариантов выражения, когда оно равно FALSE. Выражение ELSE выполняется только если IF равно FALSE.
ELSEIF Пример :
if ($a>$b) {
  echo "a больше b";
} elseif ($a==$b) {
  echo "a равно b";
} else {
  echo "a меньше b";
}
Является комбинацией IF и ELSE. Позволяет выполнить выражение, если значение IF равно FALSE, но в отличии от ELSE оно выполниться, если выражение ELSEIF равно TRUE.
IF:IF():...ENDIF;
Пример 1:
if ($a==1):
  echo "a равно 1";
elseif ($a==2):
  echo "a равно 2";
else:
  echo "а не равно 1 и 2";
endif;
Пример 2:
<?php if ($a==5):?>A=5<?php endif;?>
-Блок HTML-кода A=5 будет виден, 
     если выполнется условие $a==5 
Один из возможных вариантов группирования операторов с оператором IF. Удобно при внедрении больших блоков HTML-кода внутрь оператора IF.
WHILE Синтаксис : WHILE(условие)выражения

Можно сгруппировать несколько операторов внутри фигурных скобок или использовать альтернативный синтаксис :
WHILE(условие)выражения... ENDWHILE;
Пример 1:
$a=1;
while ($a<=5) {
  echo $a++; }
Пример 2:
$a=1;
while ($a<=5):
  echo $a;
  $a++;
endwhile;
- Эти два примера выводят номера с 1 до 5.
Простейший тип цикла в PHP. Заставляет PHP выполнять вложенные операторы до тех пор, пока условие равно TRUE. Если условие равно FALSE с самого начала, то цикл не выполнится не разу.
DO..WHILE
Пример 1:
$a=1;
do {
  echo $a;
} while ($a>1);
Можно прекратить использовать блок операторов в середине путем внедрения оператора BREAK в цикл DO..WHILE(0) :
Пример 2:
do {
  if ($a==5) {
    echo "A равно 5"
    break;
  }
  $a *= $b;
  if ($a<$minimum) {
    break;
  }
  echo "A равен $a";
} while(0);
Цикл, аналогичный WHILE, но значение логического выражения проверяется не до, а после окончания итерации. Основное отличие - то что цикл хоть один раз но выполнится.
FOR Синтаксис :
FOR (условие1; условие2; условие3)выражения

условие1 - Безусловно выполняется (вычисляется) в начале цикла
условие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;
Наиболее мощный цикл в PHP.
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";
}
default - соответствует всем значениям, которые не удовлетворяют другим CASE. CASE - могут быть любого скалярного типа, т.е. целые числа или числа с плавающей запятой и строки.
Сравнивает переменную или выражение с различными значениями и выполняет различные фрагменты кода в зависимости от того, чему будет равно значение выражения.
REQUIRE Пример :
require('include.inc');

Но его нельзя поместить внутрь цикла и ожидать, что он включит содержимое другого файла несколько раз в процессе каждой итерации. Для этого есть INCLUDE.
Заменяет себя содержимым указанного файла.
INCLUDE
Пример 1:
$files = array ('first.inc', 'second.inc', 'third.inc');
for ($a = 0; $a < count($files); $a++) {
  include($files[$a]);
}
Так как INCLUDE() это специальный оператор, требуется заключать его в фигурные скобки при использовании внутри условного оператора.
Пример 2:
if ($a < 5) {
  include('file_1.inc');
} else {
  include('file_2.inc');
}
Вставляет и выполняет содержимое указанного файла.
FUNCTION
Пример 1:
function foo ($arg_1, $arg_2,...,$arg_n) {
  echo "Пример функции.";
  return $retvalue;
}
Возвращение результатов :
Результаты возвращаются через необязательный оператор return.
Возвращаемый результат может быть любого типа, включая списки и объекты.
Пример 2:
function my_sqrt ($num) {
  return $num * $num;
}
echo my_sqrt(4); //выведет 16
Множественные результаты не могут быть возвращены в качестве результата, но вы можете реализовать это путем возврата списка :
Пример 3:
function foo() {
  return array (0, 1, 2);
}
list ($zero, $one, $two) = foo();
Аргументы :
Информация может быть передана функции через список аргументов, которые являются разделенным запятыми списком переменных и/или констант.
Списки аргументов переменной длины не поддерживаются, но того же можно достичь, передавая массивы.
Пример 4:
function takes_array($input) {
  echo "$input[0] + $input[1] = ", $input[0]+$input[1];
}
Передача по ссылке :
По умолчанию, аргументы функции передаются по значению. Для изменения аргументов в функции их надо передавать по ссылке.
Для этого надо поставить амперсанд (&) перед именем аргумента в объявлении функции :
Пример 5:
function foo( &$bar) {
  $bar .= 'и добавочная строка.';
}
$str = 'Это строка, ';
foo($str);
echo $str;   // выведет : 'Это строка, и добавочная строка.'

Пример 6:
function foo($bar) {
  $bar .= 'и добавочная строка.';
}
$str = 'Это строка, ';
foo($str);
echo $str;  //выведет : 'Это строка, '
foo(&$str);
echo $str;  //выведет : 'Это строка, и добавочная строка.'
Значения по умолчанию :
Значение по умолчанию должно быть константой, а не переменной или членом класса.
Пример 7:
function day ($type = "понедельник") {
  echo "Сегодня $type.";
}
echo day();           //выведет : Сегодня понедельник.
echo day("вторник");  //выведет : Сегодня вторник.
Аргументы по умолчанию при описании должны находиться справо от остальных аргументов.
Пример 8:
function day($day_num, $type = "понедельник") {
  return "Сегодня $day_num - $type.";
}
Объявление функции. Внутри функции может быть любой верный код PHP, даже объявление другой функции или класса. Функции должны быть объявлены перед тем, как на них ссылаться.
OLD_FUNCTION Это свойство только для совместимости и должно использоваться лишь конверторами PHP/FI2 -> PHP3. Описанные таким образом функции не могут быть вызваны из служебного кода PHP. Вы можете обойти это путем введения специальной функции в терминах PHP3, которая будет вызывать OLD_FUNCTION. Оператор OLD_FUNCTION позволяет вам определяить функцию используя синтаксис PHP/FI2 (за исключением того, что вы должны заменить 'function' на 'old_function').
CLASS
Пример 1:
<?php
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 :
Пример 2:
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);//унаследовано из обычной корзины
Набор переменных и функций, работающих с этими переменными.
 
Математические функции
 
bcadd Синтаксис :
bcadd(левая часть, правая часть, int[масштаб]);

Прибавляет левую часть к правой части и возвращает сумму типа string (строковая переменная). Факультативный параметр масштаб используется чтобы установить количество разрядов после десятичной отметки в результате.
Сложение двух чисел произвольной точности.
bccomp Синтаксис :
bccomp(левая часть, правая часть, int[масштаб]);

Сравнивает левую часть с правой частью и возвращает результат типа integer (целое). Параметр масштаб используется для установки количества цифр после десятичной отметки, используемых при сравнении. При равенстве двух частей возвращается значение 0. Если левая часть больше правой части возврашается +1, и если левая часть меньше правой части возвращается -1.
Сравнение двух чисел произвольной точности.
bcdiv Синтаксис :
bcdiv(левая часть, правая часть, int[масштаб]);

Делит левую часть на правую часть и возвращает результат. Параметр масштаб устанавливает количество цифр после десятичной отметки в результате.
Операция деления для двух чисел произвольной точности.
bcmod Синтаксис :
bcmod(левая часть, модуль);

Получение модуля левой части используя операнд модуль.
Получение модуля числа произвольной точности.
bcmul Синтаксис :
bcmul(левая часть, правая часть, int[масштаб]);

Умножает левую часть на правую часть и возвращает результат. Параметр масштаб устанавливает количество цифр после десятичной отметки в результате.
Операция умножения для двух чисел произвольной точности.
bcpow Синтаксис :
bcpow(x,y,int[масштаб]);

Возведение x в степень y. Параметр масштаб может использоваться для установки количества цифр после десятичной отметки в результате.
Возведение одного числа произвольной точности в степень другого.
bcscale Синтаксис :
bcscale(int масштаб);

Эта функция устанавливает заданный по умолчанию параметр масштаба для всех последующих математических функций, которые явно не определяют параметр масштаба.
Устанавливает масштаб по умолчанию для всех математических функций
bcsqrt Синтаксис :
bcsqrt(x,int[масштаб]);

Возвращает кваддратный корень x. Параметр масштаб устанавливает количество цифр после десятичной отметки в результате.
Получение квадратного корня числа произвольной точности.
bcsub Синтаксис :
bcsub(левая часть, правая часть, int[масштаб]);

Вычитает правую часть из левой части и возвращает результат. Параметр масштаб устанавливает количество цифр после десятичной отметки в результате.
Вычитает одно число произвольной точности из другого.
 
Функции даты и времени
 
checkdate Синтаксис :
checkdate(месяц, день, год);

Возвращает true если данная дата правильна, иначе false. Проверяет правильность даты, заданной аргументами.
Дата считается правильной, если:
- год между 1900 и 32767 включительно
- месяц между 1 и 12 включительно
- день находится в диапазоне разрешенных дней данного месяца. Високосные годы учитываются.
Проверяет правильность даты/времени.
date Синтаксис :
date(format, timestamp);

Возвращает строку, отформатированную согласно данной строке и используя данную временную метку или текущее локальное время, если не задана временная метка.
В фоматной строке должны использоваться следующие символы:
a - "am" или "pm"
A - "AM" или "PM"
d - день месяца, цифровой, 2 цифры (на первом месте ноль)
D - день недели, текстовый, 3 буквы; т.е. "Fri"
F - месяц, текстовый, длинный; т.е. "January"
h - час, цифровой, 12-часовой формат
H - час, цифровой, 24-часовой формат
i - минуты, цифровой
j - день месяца, цифровой, без начальных нулей
l (строчная "L") - день недели, текстовый, длинный; т.е. "Friday"
m - месяц, цифровой
M - месяц, текстовый, 3 буквы; т.е. "Jan"
s - секунды, цифровой
S - английский порядковый суффикс, текстовый, 2 символа; т.е. "th", "nd"
U - секунды с начала века
Y - год, цифровой, 4 цифры
w - день недели, цифровой, 0 означает воскресенье
y - год, цифровой, 2 цифры
z - день года, цифровой; т.е. "299"
Пример 1:
print(date( "l dS of F Y h:i:s A" ));
print("July 1, 2000 is on a " . date("l", mktime(0,0,0,7,1,2000)));

Функции date() и mktime() возможно использовать вместе для того, чтобы найти даты в будущем или прошлом.
Пример 2:
$tomorrow = mktime(0,0,0,date("m") ,date("d")+1,date("Y"));
$lastmonth = mktime(0,0,0,date("m")-1,date("d"), date("Y"));
$nextyear = mktime(0,0,0,date("m"), date("d", date("Y")+1);
Формат локального времени/даты.
strftime Синтаксис :
strftime(format, timestamp);

Возвращает строку, отформатированную согласно данной форматной строке и используя данную временную метку или текущее локальное время, если метка не задана.
В форматной строке следует использовать следующие спецификаторы преобразований:
%a - сокращенное название дня недели согласно текущему locale
%A - полное название дня недели согласно текущему locale
%b - сокращенное название месяца согласно текущему locale
%B - полное название месяца согласно текущему locale
%c - предпочтительное представление даты и времени для текущего locale
%d - день месяца как десятичное число (в диапазоне от 0 до 31)
%H - час как десятичное число в 24-часовом формате (в диапазоне от 00 до 23)
%I - час как десятичное число в 12-часовом формате (в диапазоне от 01 до 12)
%j - день года как десятичное число (в диапазоне от 001 до 366)
%m - месяц как десятичное число (в диапазоне от 1 до 12)
%M - минуты как десятичное число
%p - `am' или `pm' согласно текущему времени, или соответствующие строки для текущего locale
%S - секунды как десятичное число
%U - номер недели текущего года как десятичное число, начиная с первого Воскресенья в качестве первого дня первой недели
%W - номер недели текущего года как десятичное число, ночиная с первого Понедельника в качестве первого дня первой недели
%w - день недели как целое число, Воскресенье - 0-й день
%x - предпочитаемое представление даты для текущего locale не включающее время
%X - предпочитаемое представление времени для текущего locale не включающее дату
%y - год как десятичное число без столетия (в диапазоне от 00 до 99)
%Y - год как десятичное число, включая столетие
%Z - временная зона или название или сокращение
%% - символ `%'
Пример :
setlocale ("LC_TIME", "C");
print(strftime("%A in Finnish is "));
setlocale ("LC_TIME", "fi");
print(strftime("%A, in French "));
setlocale ("LC_TIME", "fr");
print(strftime("%A and in German "));
setlocale ("LC_TIME", "de");
print(strftime("A.\n"));
Форматирует локальное время согласно установкам locale.
getdate Синтаксис :
getdate(timestamp);

Возвращает ассоциативный массив, содержащий информацию о дате со следующими элементами:
"seconds" - секунды
"minutes" - минуты
"hours" - часы
"mday" - день месяца
"wday" - день недели, цифровой
"mon" - месяц, цифровой
"year" - год, цифровой
"yday" - день года, цифровой; т.е. "299"
"weekday" - день недели, текстовый, полный; т.е. "Friday"
"month" - месяц, текстовый, полный; т.е. "January"
Получает информацию о дате/времени.
gmdate Синтаксис :
gmdate(format, timestamp);

Аналогична функции date() за исключением того, что время возвращается в Гринвичском формате Greenwich Mean Time (GMT). Например, при запуске в Финляндии (GMT +0200), первая строка ниже напечатает "Jan 01 1998 00:00:00", в то время как вторая строка напечатает "Dec 31 1997 22:00:00".
Пример :
echo date( "M d Y H:i:s",mktime(0,0,0,1,1,1998) ); echo gmdate( "M d Y H:i:s",mktime(0,0,0,1,1,1998) );
Форматирует GMT/CUT время/дату.
mktime Синтаксис :
mktime(час, минута, секунда, месяц, день, год);

Возвращает временную метку Unix согласно данным аргументам. Эта временная метка является целым числом, равным количеству секунд между эпохой Unix (1 Января 1970) и указанным временем.
Пример :
echo date( "M-d-Y", mktime(0,0,0,12,32,1997) );
echo date( "M-d-Y", mktime(0,0,0,13,1,1997) );
echo date( "M-d-Y", mktime(0,0,0,1,1,1998) );
Получает временную метку UNIX для даты.
gmmktime Синтаксис :
gmmktime(час, минута, секунда, месяц, день, год);

Идентична mktime() за исключением передаваемых параметров, представляющих дату в GMT.
Получает временную метку UNIX для даты в GMT.
time Синтаксис :
time();

Возвращает текущее время, измеренное в числе секунд с эпохи Unix (1 Января 1970 00:00:00 GMT).
Возвращает текущую временную метку UNIX.
microtime Синтаксис :
microtime();

Возвращает строку "msec sec" где sec текущее время, измеренное в числе секунд с эпохи Unix (0:00:00 1 Января, 1970 GMT), а msec - это часть в микросекундах. Эти функции доступны только в операционных системах, поддерживающих системный вызов gettimeofday().
Возвращает текущую временную метку UNIX в микросекундах.
Почтовые функции
mail Синтаксис :
mail(e-mail, тема, само сообщение, подпись);

Mail() посылает сообщение по адресу e-mail. Письмо можно отправить по нескольким адресатам, если в поле e-mail указать их адреса через пробел.
подпись - надпись, которая пишется в конце каждого письма.

Пример :
mail("spravka_web@chat.ru", "добавить ресурс", $mess);
Отсылает почту.
Функции URL
parse_url Синтаксис :
array parse_url(string url);

Эта функция возвращает ассоциативный массив, включающий множество различных существующих компонентов URL. Они включают "scheme", "host", "port", "user", "pass", "path", "query" и "fragment".
Обрабатывает URL и возвращает его компоненты.
urldecode Синтаксис :
string urldecode(string str);

Декодирует любые %## закодированные в указанной строке. Возвращается декодированная строка.
Пример :
$a = split (' & ', $querystring);
$i = 0;
while ($i < count ($a)) {
  $b = split ('=', $a[$i]);
  echo 'Сообщение из параметров ', 
    htmlspecialchars (urldecode ($b[0])),
       ' c ', htmlspecialchars (urldecode ($b[1])), "<BR>";
  $i++;
}
Декодирует URL-закодированную строку.
urlencode Синтаксис :
string urlencode(string str);

Возвращает строку, в которой все буквенноцифровые символы кроме -_. заменены на символ (%) с следующими за ним двумя шестнадцатиричными цифрами и пробелами, закодированными как символ (+) .
Пример :
echo '<A href="mycgi?foo=', urlencode($useinput), '">';
Кодирует URL строку.
base64_encode Синтаксис :
string base64_encode(string data);

base64_encode() возвращает data закодированные в кодировке base64. Эта кодировка разработана для того, чтобы передовать двоичные данные через транспортные слои, которые не содержат восьмой бит, такие как почтовые тела. Данные в кодировке Base64 занимают примерно на 33% больше места, чем оригинал.
Кодирует данные в кодировке MIME base64.
base64_decode Синтаксис :
string base64_decode(string encoded_data);

base64_decode() декодирует encoded_data и возвращает оригинал данных. Возвращаемые данные могут быть двоичными.
Декодирует данные, закодированные в кодировке MIME base64.
Функции переменных
gettype Синтаксис :
string gettype(mixed var);
Возвращает тип переменной PHP var.
Возможные значения для возвращаемой строки:
"integer"
"double"
"string"
"array"
"object"
"unknown type"
Получает тип переменной.
intval Синтаксис :
int intval(mixed var, int [base]);

Возвращает целочисленное значение переменной var, используя указанное основание для перевода (по умолчанию 10). var может быть скалярного типа. Вы не можете использовать функцию intval() для массивов или объектов.
Возвращает целочисленное значение переменной.
doubleval Синтаксис :
double doubleval(mixed var);

Возвращает double (с плавающей точкой) значение переменной var.
var может быть скалярного типа. Вы не можете использовать doubleval() на массивах и объектах.
Получает значение переменной в формате double.
empty Синтаксис :
int empty(mixed var);

Возвращает false, если var существует и имеет не пустое или не нулевое значение; true в обратном случае.
Определяет, присвоено ли у переменной какое либо значение.
is_array Синтаксис :
int is_array(mixed var);

Возвращает true, если var есть в массиве, false в обратном случае.
Определяет, входит ли переменная в массив.
is_double Синтаксис :
int is_double(mixed var);

Возвращает true, если var является типа double, false в обратном случае.
Определяет, является ли переменная типа double.
is_float Синтаксис :
int is_float(mixed var);

Эта функция является псевдонимом для функции is_double().
Определяет, является ли переменная типа float.
is_int Синтаксис :
int is_int(mixed var);

Возвращает true, если var является типа integer (long), false в обратном случае.
Определяет, является ли переменная типа integer.
is_integer Синтаксис :
int is_integer(mixed var);

Возвращает true, если var является типа integer (long), false в обратном случае.
Определяет, является ли переменная типа integer.
is_long Синтаксис :
int is_long(mixed var);

Возвращает true, если var является типа integer (long), false в обратном случае.
Определяет, является ли переменная типа integer.
is_object Синтаксис :
int is_object(mixed var);

Возвращает true, если var типа object, false в обратном случае.
Определяет, является ли переменная типа object.
is_real Синтаксис :
int is_real(mixed var);

Возвращает true, если var типа real, false в обратном случае.
Определяет, является ли переменная типа real.
is_string Синтаксис :
int is_string(mixed var);

Возвращает true, если var is a string, false в обратном случае.
Определяет, является ли переменная типа string.
isset Синтаксис :
int isset(mixed var);

Возвращает true, если var существует; false в обратном случае.
Если переменная была удалена функцией unset(), она больше не будет определяться функцией isset().
Пример :
$a = "test";
echo isset($a); // true
unset($a);
echo isset($a); // false
Определяет, существует ли переменная.
settype Синтаксис :
int settype(string var, string type);

Устанавливает тип переменнойvar на type.
Возможные значения type :
"integer"
"double""
"string"
"array""
"object"
Возвращает true, при успехе; false в обратном случае.
Устанавливает тип переменной.
strval Синтаксис :
string strval(mixed var);

Получает строковое значение var.
var может быть любого скалярного типа. Вы не можете использовать strval() на массивах или объектах.
Получает строковое значение переменной.
unset Синтаксис :
int unset(mixed var);

unset() уничтожает указанную переменную и возвращает true.
Пример :
unset( $foo );
unset( $bar['quux'] );
Удаляет указанную переменную.
Дополнительные функции
eval Синтаксис :
void eval(string code_str);

eval() производит выполнение строки, данной в code_str содержащей PHP код. Кстати, это может пригодиться для сохранения кода в текстовом поле базы данных для более позднего выполнения.
При изменении переменных значений в eval() эти переменные будут изменены и в основных данных. Пример :
<?php$string = 'cup';
$name = 'coffee';
$str = 'This is a $string with my $name in it.
';
echo $str;
eval( "\$str = \"$str\";" );
echo $str;
?>
Результатом выполнения этого кода будет:
This is a $string with my $name in it.
This is a cup with my coffee in it.
Производит выполнение строки содержащей PHP код.
die Синтаксис :
void die(string message);

Эта функция выводит сообщение и прекращает выполнение текущего скрипта. Не возвращает значение.
Пример :
$filename = '/path/to/data-file';
$file = fopen($filename, 'r')
or die "unable to open file ($filename)";
?>
Вывод сообщения и завершение текущего скрипта.
exit Синтаксис :
void exit(void);

Эта функция завершает текущий скрипт. Не возвращает значение.
Завершает текущий скрипт.
iptcparse Синтаксис :
array iptcparse(string iptcblock);

Эта функция анализирует двоичный блок IPTC на одиночные теги. Возвращает массив, использующий tagmarker как индекс и значение как значение. Возвращает false при ошибке или если никаких IPTC данных не было найдено.
Анализирует двоичный IPTC блок на одиночные тэги.
leak Синтаксис :
void leak(int bytes);

leak() отсекает определенный объем памяти.
Это полезно при отладке диспетчера памяти, который автоматически очищает "отсеченную" память при выполнении запроса.
Отсечение куска памяти.
pack Синтаксис :
string pack(string format, mixed [args]...);

Упаковывает данные в двоичную строку согласно формату. Возвращает двоичную строку, содержащую данные.
Строка формата состоит из кодов формата, сопровождаемые факультативным параметром ретранслятора. Параметр ретранслятора может быть или целочисленное значение или * для повторение до конца входных данных. Для a, A, h, H количество повторов определяет, сколько принимается символов одного параметра данных, для @ это безусловная позиция, где поместить следующие данные, для всего остального количество повторов определяет сколько данных будет использовано и упаковано в возникающую в результате двоичную строку. В настоящее время выполнено:
a строка NUL-заполнений
A строка SPACE-заполнений
h Hex строка, младший полубайт вначале
H Hex строка, старший полубайт вначале
c signed char
C unsigned char
s signed short (всегда 16 бит, machine byte order)
S unsigned short (всегда 16 бит, machine byte order)
n unsigned short (всегда 16 бит, big endian byte order)
v unsigned short (всегда 16 бит, little endian byte order)
i signed integer (machine dependant размер и byte order)
I unsigned integer (machine dependant размер и byte order)
l signed long (всегда 32 бит, machine byte order)
L unsigned long (всегда 32 бит, machine byte order)
N unsigned long (всегда 32 бит, big endian byte order)
V unsigned long (всегда 32 бит, little endian byte order)
f float (machine dependent размер и representation)
d double (machine dependent размер и representation)
x NUL байт
X Копирует один байт
@ NUL-Заполнение до конкретной позиции
Пример :
$binarydata = pack(" nvc* ", 0x1234, 0x5678, 65, 66);
Возникающая в результате двоичная строка будет длиной 6 байтов и содержать последовательность байтов 0x12, 0x34, 0x78, 0x56, 0x41, 0x42.
PHP хранит интегральные значения как значения со знаком и имеет machine dependant размер. Если вы делаете без знака, то интегральное значение будет сохранено и сконвертировано, при этом конечный результат будет неизвестен.
Упаковывает данные в двоичную строку.
register_shutdown
_function
Синтаксис :
int register_shutdown_function(string func);

Устанавливает функцию с именем func, которая будет выполнена при завершении.
Устанавливает функцию, которая будет выполнена при завершении.
serialize Синтаксис :
string serialize(mixed value);

serialize() возвращает строку состоящую из потока байтов при представлениизначения value, которое может где-нибудь сохранено.
Это полезно для сохранения или передачи значений PHP без потери их типа и структуры.
Пример :
//$session_data содержит многомерный массив 
       с информацией о сессии 
//текущего пользователя.  Мы используем 
       serialize() для сохранения
//этого в базе данных в конце запроса.

$conn = odbc_connect("webdb", "php", "chicken");
$stmt = odbc_prepare($conn,
  "UPDATE sessions SET data = ? WHERE id = ?");
$sqldata = array(serialize($session_data), 
  $PHP_AUTH_USER);
if (!odbc_execute($stmt, &$sqldata)) {
  $stmt = odbc_prepare($conn,
    INSERT INTO sessions (id, data) VALUES(?, ?)");
  if (!odbc_execute($stmt, &$sqldata)) {
      /* Что-то сделано неправильно. */
  }
}
Генерирует удобохраниемое представление значения.
sleep Синтаксис :
void sleep(int seconds);

Sleep фукция выполняет задержку выполненя программы в секундах (seconds).
Задержка выполнения.
unpack Синтаксис :
array unpack(string format, string data);

Распаковывает данные из двоичной строки в массив согласно формату. Возвращает массив, содержащий распакованные элементы.
Пример :
$array = unpack("c2chars/nint", $binarydata);
Возникающий в результате массив будет содержать "chars1", "chars2" и "int".
Распаковывает данные из двоичной строки.
unserialize Синтаксис :
mixed unserialize(string str);

unserialize() берет одно сохраненное значение и преобразует обратно в PHP значение. Возвращает преобразованное значение, и может иметь тип: integer, double, string, array или object. Если был преобразован object, то методы не востановятся.
Пример :
// Здесь мы используем unserialize() для загрузки 
        данных о сессии из базы данных
// в $session_data.  Этот пример дополняет 
        описанный в месте
// с serialize() .

$conn = odbc_connect("webdb", "php", "chicken");
$stmt = odbc_prepare($conn, 
  "SELECT data FROM sessions WHERE id = ?");
$sqldata = array($PHP_AUTH_USER);
if (!odbc_execute($stmt, &$sqldata) || 
  !odbc_fetch_into($stmt, &$tmp)) {
// Если сбой запуска или выборки , 
        то инициализируем массив
    $session_data = array();
} else {
    // Мы должны иметь представление в $tmp[0].
    $session_data = unserialize($tmp[0]);
    if (!is_array($session_data)) {
// Что-то неправильно, инициализируем массив
        $session_data = array();
    }
}
Создает PHP значение из сохраненного представления.
uniqid Синтаксис :
int uniqid(string prefix);

uniqid() возвращает уникальный идентификатор, основанный на текущем времени в микросекундах. Префикс может быть полезен, например, если Вы генерируете идентификаторы одновременно на отдельных хостах, которые, могли бы случилось, генерировали идентификатор в одной и той же микросекунде. Префикс может быть длиной до 114 символов.
Генерирует уникальный идентификатор.
usleep Синтаксис :
void usleep(int micro_seconds);

Задержка выполнения программы в микросекундах(micro_seconds).
Задержка выполнения в микросекундах.
Функции запуска программ
escapeshellcmd Синтаксис :
string escapeshellcmd(string command);

Убирает любые символы в строке, которые могут быть использованы в командном интерпретаторе как произвольные команды. Эту функцию нужно использовать, что бы убедится, что все ваши данные введены правильно, и эту функцию лучше всего вставлять в функции exec() или system(). Стандартное использование этой функции выглядит так:
system(EscapeShellCmd($cmd))
Убирает shell метасимволы.
exec Синтаксис :
string exec(string command, string [array], int [return_var]);

exec() запускает программу из строки command, весь стандартный вывод отключен. Возвращает последнюю строку результата выполнения программы.
Если параметр array установлен, то указанный массив будет заполнен выводом из программы. Помните, если массив уже содержит данные, то exec() добавляет свои данные.
Если параметр return_var установлен наряду с параметром array, то в него записывается результат выполнения команды.
Запуск внешней программы.
system Синтаксис :
string system(string command, int [return_var]);

это функция для запуска command и вывода результата. Если используется второй параметр, то в него записывается результат выполнения команды.
Вызов System() также пробует автоматически вставить в буфер вывода web сервера после каждой строки вывода, если PHP запущен как модель сервера.
Запуск внешней программы с выводом результата.
passthru Синтаксис :
string passthru(string command, int [return_var]);

Функция passthru() похожа на функцию Exec() для запуска command. Если параметр return_var установлен, то результат Unix команды помещается здесь. Эта функция должна использоваться вместо Exec() или System() тогда, когда вывод из Unix команды является двоичными данными, которые должны быть переданы непосредственно обратно в окно просмотра(browser). Это можно использовать, например, для запуска утилиты pbmplus для вывода непосредственно потока изображения. Установка типа image/gif и вызов программы pbmplus, чтобы вывести gif-рисунок, вы можете создавать PHP скрипты, которые выводят изображения непосредственно.
Запускает внешнюю программу и выводит данные напрямую.
Функции для работы с каталогами
chdir Синтаксис :
int chdir(string directory);

Изменяет текущий PHP каталог на directory. Возвращает FALSE если не может изменить, TRUE если смена произошла.
Смена каталога.
dir Синтаксис :
new dir(string directory);

Псевдо-объектно ориентированный механизм для чтения каталога. Открывает каталог из directory. Два реквезита доступно, если только каталог был открыт. Реквезит handle может быть использован вместе с другими функциями работы с каталогом типа readdir(), rewinddir() и closedir(). Реквезит path установлен путь каталога, который был открыт. Три метода доступны: чтение, возврат к началу и закрытие.
Пример :
$d = dir("/etc");
echo "Handle: ".$d->handle."<br>\n";
echo "Path: ".$d->path."<br>\n";
while($entry=$d->read()) { 
  echo $entry."<br>\n";
}
$d->close();
Класс каталога (псевдо-объектно ориентированный механизм).
closedir Синтаксис :
void closedir(int dir_handle);

Закрывает поток каталога, обозначенный как dir_handle. Поток предварительно должен быть открыт финкцией opendir().
Закрыть дескриптор(handle) каталога.
opendir Синтаксис :
int opendir(string path);

Возвращает дескриптор(handle) каталога, который в последующем используется в closedir(), readdir(), и rewinddir() обращениях.
Открыть дескриптор(handle) каталога.
readdir Синтаксис :
string readdir(int dir_handle);

Возвращает имя следующего файла из каталога. Имена не возвращаются в любом специфическом порядке.
Пример :
<?php
  $handle=opendir('.');
  echo "Directory handle: $handle\n";
  echo "Files:\n";
  while ($file = readdir($handle)) {
    echo "$file\n";
  }
  closedir($handle);
?>
Чтение данных из каталога по дескриптору(handle).
rewinddir Синтаксис :
void rewinddir(int dir_handle);

Сбрасывает поток каталога, обозначенный как dir_handle в начало данных.
Возврат к началу данных каталога по дескриптору(handle).
Функции динамической загрузки
dl Синтаксис :
int dl(string library);

Загружает PHP расширение определенное в library.
Загрузка PHP расширений во время выполнения.
Функции IMAP
Для того, чтобы эти функции заработали вы должны скомпилировать PHP с флагом --with-imap.
Этот флаг требут,чтобы была установлена библиотека c-client. Последнюю версию можно получить по адресу ftp://ftp.cac.washington.edu/imap/. Затем скопируйте c-client/c-client.a в /usr/local/lib или какую либо другую директорию, прописанную в пути, затемскопируйте c-client/rfc822.h, mail.h и linkage.h в /usr/local/include или другую директорию с include-файлами.
imap_append Синтаксис :
int imap_append(int imap_stream, string mbox, string message, stringflags);

Возвращает true в случае успеха или false иначе.
imap_append() добавляет текстовое сообщение в указанный почтовый ящик mbox. Если указаны необязательные флаги, также записывает в почтовый ящик и флаги. При общении с сервером Cyrus IMAP нужно использовать в качестве ограничителей строки "\r\n" вместо "\n",иначе действие не выполнится.
Добавляет текстовое сообщение в указанный почтовый ящик.
imap_base64 Синтаксис :
string imap_base64(string text);

Функция imap_base64() декодирует текст в формате BASE-64. Декодированное сообщение возвращается как строка.
Декодирует текст, закодированный с помощью BASE64.
imap_body Синтаксис :
string imap_body(int imap_stream, int msg_number, int flags);

Функция imap_body() возвращает тело сообщения, имеющего номер п/п msg_number в текущем почтовом ящике.
Необязательные флаги это битовые маски из
FT_UID - Номер сообщения msgno является UID'ом сообщения
FT_PEEK - Не устанавливать флаг \Seen если он еще не установлен.
FT_INTERNAL - Возвращаемая строка записана во внутреннем формате и не может быть приведена к канонической форме с CRLF.
Читает тело сообщения.
imap_check Синтаксис :
array imap_check(int imap_stream);

Возвращает информацию о текущем почтовом ящике. В случае неуспеха возвращает FALSE.
Функция imap_check() проверяет статус текущего почтового ящика на сервере и возвращает информацию в объекте со следующими свойствами :
Date : дата сообщения
Driver : драйвер
Mailbox : название почтового ящика
Nmsgs : количество сообщений
Recent : количество недавно пришедших сообщений
Проверяет текущий почтовый ящик.
imap_close Синтаксис :
int imap_close(int imap_stream, int flags);

Закрывает поток imap. Необязательный флаг CL_EXPUNGE заставляет стереть помеченные на удаление сообщенияпри закрытии.
Закрывает поток IMAP.
imap_createmailbox Синтаксис :
int imap_createmailbox(int imap_stream, string mbox);

imap_createmailbox() создает новый почтовый ящик указанный в mbox.Возвращает true в случае успеха и false при ошибке.
Создает новый почтовый ящик.
imap_delete Синтаксис :
int imap_delete(int imap_stream, int msg_number);

Возвращает true.
Возвращает true.Функция imap_delete() помечает сообщение, указанное через msg_number на удаление. Настоящее удаление сообщенийосуществляется функцией imap_expunge().
Помечает сообщение из текущего почтового ящика на удаление.
imap_deletemailbox Синтаксис :
int imap_deletemailbox(int imap_stream, string mbox);

Возвращает true в случае успеха и false иначе.
Удаляет почтовый ящик.
imap_expunge Синтаксис :
int imap_expunge(int imap_stream);

imap_expunge() удаляет все сообщения помеченные на удаление с помощью imap_delete().
Возвращает true.
Удаляет все сообщения, помеченные на удаление.
imap_fetchbody Синтаксис :
string imap_fetchbody(int imap_stream, int msg_number, int part_number, flags flags);

Эта функция заставляет извлечь подробную секцию указанного сообщения как текстовую строку.Секция это строка целых чисел, разделенных точками, которые указывают на части тела сообщения в списке частей согласно спецификации IMAP4. Части тела не декодируются этой функцией.
Необязательным параметром к imap_fetchbody () является битовая маска из
FT_UID - msgono является
UID'ом FT_PEEK - не устанавливать флаг \Seen если он не установлен
FT_UID - возвращаемая строка записана во внутреннем формате, которое не может быть канонизированна с помощью CRLF
Извлекает простую секцию тела сообщения.
imap_fetchstructure Синтаксис :
array imap_fetchstructure(int imap_stream, int msg_number);

array imap_fetchstructure(int imap_stream, int msg_number);Эта функция заставляет извлечь всю информацию о структуре сообщения с номером msg_number. Возвращаемая величинаявляется объектом со следующими элементами :
type, encoding, ifsubtype, subtype, ifdescription, description, ifid, id, lines, bytes, ifparameters тип, кодировка, подтип интерфейса, подтип, описание интерфейса, описание, идентификатор интерфейса, строки, байты, параметры интерфейса
Также функция возвращает массив объектов под названием parameters[]. Этот объект имеет следующиесвойства :
attribute, value
атрибут, величина
В случае сообщения из нескольих частей, функция также возвращает массив объектов всех свойств под название parts[].
Читает структуру простого сообщения.
imap_header Синтаксис :
object imap_header(int imap_stream, int msg_number, int fromlength, int subjectlength, int defaulthost);

Эта функция возвращает объект различных элементов заголовка
remail,date,Date,subject,Subject,in_reply_to,message_id,newsgroups, followup_to,references
toaddress (полная строка To: строка длиной до 1024 символов)
to[] (возвращает массив объектов из строки To, содержит:)
personal
adl
mailbox
host
fromaddress (полная строка From: строка длиной до 1024 символов)
from[] (возвращает массив объектов из строки From, содержит:)
personal
adl
mailbox
host
ccaddress (полная строка Cc: строка длиной до 1024 символов)
cc[] (возвращает массив объектов из строки Cc, содержит)
personal
adl
mailbox
host
bccaddress (полная строка Bcc: строка длиной до 1024 символов)
bcc[] (возвращает массив объектов из строки Bcc, содержит:)
personal
adl
mailbox
host
reply_toaddress (полная строка Reply_to: строка длиной до 1024 символов)
reply_to[] (возвращает массив объектов из строки Reply_to, содержит:)
personal
adl
mailbox
host
senderaddress (полная строка Sender: строка длиной до 1024 символов)
sender[] (возвращает массив объектов из строки Sender, содержит:)
personal
adl
mailbox
host
return_path (полная строка Return-path: строка длиной до 1024 символов)
return_path[] (возвращает массив объектов из строки Return_path, содержит:)
personal
adl
mailbox
host
udate ( дата сообщения в формате времени unix)
fetchfrom (строка From, отформатированная до fromlength символов)
fetchsubject (строка Subject, отформатированная до subjectlength символов)
Читает заголовок сообщения.
imap_headers Синтаксис :
array imap_headers(int imap_stream);

Возвращает строковый массив из информации по заголокам. Один элемент массива на сообщение.
Возвращает заголовки всех сообщений в почтовом ящике.
imap_listmailbox Синтаксис :
array imap_listmailbox(int imap_stream, string ref, string pat);

Возвращает массив, содержащий названия почтовых ящиков.
Читает список почтовых ящиков.
imap_listsubscribed Синтаксис :
array imap_listsubscribed(int imap_stream, string ref, string pattern);

Возвращает массив всех почтовых ящиков на которые Вы подписаны. Аргументы ref и pattern указывают начальноеместорасположение откуда начинать поиск и шаблон, которому должны удовлетворять названия почтовых ящиков./td>
Перечисляет все подписанные ящики.
imap_mail_copy Синтаксис :
int imap_mail_copy(int imap_stream, string msglist, string mbox, int flags);

Возвращает true в случае успеха и false иначе.
Копирует почтовые сообщения указанные с помощью msglist в почтовый ящик mbox. msglist - это диапазон, а не простономера сообщений.
Флаги - это битовые маски из
CP_UID - номера в последовательности содержат
UID'ы CP_MOVE - после копирования удалить сообщения из текущего почтового ящика
Копирует указанные сообщения в почтовый ящик.
imap_mail_move Синтаксис :
int imap_mail_move(int imap_stream, string msglist, string mbox);

Переносит почтовые сообщения указанные с помощью msglist в почтовый ящик mbox. msglist - это диапазон, а не простономера сообщений.
Возвращает true в случае успеха и false иначе.
Переносит указанные сообщения в почтовый ящик.
imap_num_msg Синтаксис :
int imap_num_msg(void);

Возвращает количество сообщений в текущем почтовом ящике.
Выдает количество сообщений в текущем почтовом ящике.
imap_num_recent Синтаксис :
int imap_num_recent(int imap_stream);
Возвращает количество недавно пришедших сообщений в текущем почтовом ящике.
imap_open Синтаксис :
int imap_open(string mailbox, string username, string password, int flags);

В случае успеха возвращает поток IMAP или false иначе.
Эта функция может быть использована для открытия потоков к POP3 и NNTP серверам.
Для того, чтобы присоединиться к серверу IMAP на 143-й порт на локальной машине сделайте следующее:
$mbox = imap_open("{localhost:143}INBOX","user_id","password");
Для того, чтобы подсоединиться к POP3-серверу на 110-й порт на локальном сервере используйте:
$mbox = imap_open("{localhost/pop3:110}INBOX","user_id","password");
Для того, чтобы подсоединиться к NNTP-серверу на 119-й порт на локальном сервере используйте:
$nntp = imap_open("{localhost/nntp:119}comp.test","","");
Для того, чтобы подсоединиться к удаленному серверу замените "localhost" на имя или IP-адрес сервера к которомуВы хотите подсоединиться.
Опции - битовая маска из
OP_READONLY - Открыть почтовый ящик в режим "только чтение"
OP_ANONYMOUS - Не использовать или не обновлять .newsrc при использовании новостей
OP_HALFOPEN - Для IMAP и NNTP устанавливает соединение, но не открывает почтовый ящик
CL_EXPUNGE - Автоматически очищать почтовый ящик при закрытии
Открывает поток IMAP в почтовый ящик.
imap_ping Синтаксис :
int imap_ping(int imap_stream);

Возвращает true если поток еще работоспособен и false иначе.
Функция imap_ping() проверяет поток на работоспособность. Он может также проверять новую почту; это предпочтительный метод для периодической проверки новой почты и "живучести" удаленных серверов.
Проверяет поток IMAP на работоспособность.
imap_renamemailbox Синтаксис :
int imap_renamemailbox(int imap_stream, string old_mbox, string new_mbox);

Эта функция переименовывает старый почтовый ящик в новый.
Возвращает true в случае успеха и false иначе.
Переименовывает старый почтовый ящик в новый.
imap_reopen Синтаксис :
int imap_reopen(string imap_stream, string mailbox, string [flags]);

Возвращает true в случае успеха и false иначе.
Эта функция заново открывает указанный поток на новый ящик.
Опции - битовая маска из
OP_READONLY - Открыть почтовый ящик в режиме только чтение
OP_ANONYMOUS - Не использовать или не обновлять .newsrc при работе с новостями
OP_HALFOPEN - Для IMAP и NNTP устанавливает связь но не открывает почтовый ящик
CL_EXPUNGE - Очищает почтовый ящик при закрытии
Заново открывает поток IMAP на новый почтовый ящик.
imap_subscribe Синтаксис :
int imap_subscribe(int imap_stream, string mbox);

Возвращает true в случае успеха и false иначе.
Подписывает на почтовый ящик.
imap_undelete Синтаксис :
int imap_undelete(int imap_stream, int msg_number);

Эта функция cнимает отметку с сообщения помеченного на удаление функцией imap_delete().
Возвращает true в случае успеха и false иначе.
Снимает отметку с сообщения помеченного на удаление.
imap_unsubscribe Синтаксис :
int imap_unsubscribe(int imap_stream, string mbox);

Возвращает true в случае успеха и false иначе.
Снимает подписку с почтового ящика.
imap_qprint Синтаксис :
string imap_qprint(string string);

Возвращает 8-битовую (бинарную) строку.
Конвертирует строку формата quoted-printable в 8-битовую строку.
imap_8bit Синтаксис :
string imap_8bit(string string);

Возвращает строку в формате quoted-printable.
Конвертирует 8-битовую строку в формат quoted-printable.
imap_binary Синтаксис :
string imap_binary(string string);

Возвращает строку в формате base64.
Конвертирует 8-битную строку в формат base64.
imap_scanmailbox Синтаксис :
array imap_scanmailbox(int imap_stream, string string);

Возвращает массив, содержащий имена почтовых ящиков, которые имеют строку string в названии.
Читает список почтовых ящиков, проводит поиск в названиях ящиков.
imap_mailboxmsginfo Синтаксис :
array imap_mailboxmsginfo(int imap_stream);

Возвращает информацию о текущем почтовом ящике. FALSE в случае неудачи.
Функция imap_mailboxmsginfo() проверяет статус текущего почтового ящика на сервере и возвращает информацию в объекте со следующими свойствами:
Date : дата сообщения
Driver : драйвер
Mailbox : название почтового ящика
Nmsgs : количество сообщений
Recent : количество недавно пришедших сообщений
Unread : количество непрочитанных сообщений
Size : размер почтового ящика
Получает информацию о текущем почтовом ящике.
imap_rfc822_
write_address
Синтаксис :
string imap_rfc822_write_address(string mailbox, string host, string personal);

Возвращает правильно отформатированный email адрес по данному почтовому ящику, хосту и персональной информации.
Возвращает правильно отформатированный email адрес.
imap_rfc822_
parse_adrlist
Синтаксис :
string imap_rfc822_parse_adrlist(string address, string default_host);

Эта функция разбирает адресную строку и для каждого адреса возвращает массив объектов.
Есть 4 типа объектов:
mailbox - название почтового ящика (имя пользователя)
host - название хоста
personal - личное имя
adl - путь к домену-источнику
Проводит разбор адресной строки.
imap_setflag_full Синтаксис :
string imap_setflag_full(int stream, string sequence, string flag, string options);

Эта функция застваляет добавить указанный флаг к набору флагов сообщения в указанной последовательности.
options - это битовая маска из ST_UID
Аргументы последовательности содержат UIDы вместо номеров
Устанавливает флаги на сообщения.
imap_clearflag_full Синтаксис :
string imap_clearflag_full(int stream, string sequence, string flag, string options);

Эта функция заставляет удалить флаги из набора флагов сообщения в указанной последовательности.
options - это битовая маска из ST_UID
Аргументы последовательности содержат UIDы вместо номеров
Очищает флаги сообщения.
imap_soft Синтаксис :
string imap_sort(int stream, int criteria, int reverse, int options);

Возвращает массив номеров сообщений рассортированных по данному параметру
Rev должен быть равен 1 если нужна сортировка в обратном порядке
Критерии сортировки (должен быть указан только один): SORTDATE - по дате сообщения
SORTARRIVAL - по дате поступления
SORTFROM - по полю From
SORTSUBJECT - по теме сообщения
SORTTO - по полю To
SORTCC - по полю cc
SORTSIZE - по размеру
опции - битовая маска из
SE_UID - Возвратить UIDы вместо номеров последовательности
SE_NOPREFETCH - Не извелекать заранее найденные сообщения
Сортирует сообщения в текущем почтовом ящике.
imap_fetchheader Синтаксис :
stringimap_fetchheader(int imap_stream, int msgno, int flags);

Эта функция заставляет извлечь полный, неотфильтрованный заголовок указанного сообщения в формате RFC 822 как текстовую строку.
Опиции:
FT_UID msgno является UID'ом
FT_INTERNAL Возвращаемая строка записана во внутреннем формате без каких-либо попыток канонизировать ее с помощью CRLF
FT_PREFETCHTEXT RFC822. Текст должен быть предварительно разобран. Это поможет избежать эстренных задержек если требуется извлечь полный текст сообщения (например, в операции "сохранить в локальном файле")
Возвращает заголовок сообщения.
imap_uid Синтаксис :
string imap_uid(string mailbox, int msgno);
Эта функция возвращает UID по данному номеру сообщения в последовательности.
Функции SNMP
snmpget Синтаксис :
int snmpget(string hostname, string community, string object_id);

Возвращает значание SNMP объекта при успехе и false при ошибке.
Функция snmpget() используется для чтения значения SNMP объекта, указанного в object_id.
SNMP агент определяется именем хоста hostname и группа чтения определяется параметром community.
snmpget("127.0.0.1", "public", "system.SysContact.0")
Получает объект SNMP.
snmpwalk Синтаксис :
array snmpwalk(string hostname, string community, string object_id);

Возвращает массив значений SNMP объектов начиная с object_id и false при ошибке.
Функция snmpwalk() используется для чтения всех значений у SNMP агента, определяемого параметром hostname.
Community определяет группу чтения для агента.
Нулевой object_id берется как корень дерева SNMP объектов и все объекты под этим деревом возвращаются как массив.
Если object_id указан, то возвращаются все SNMP объекты ниже этого объекта.
$a = snmpwalk("127.0.0.1", "public", "");
Указанный выше вызов функции вернет все SNMP объекты из SNMP агента, напущенного на локальном хосте.
По всем значениям можно пройти с помощью цикла :
for($i=0; $i<count($a); $i++) {
	echo $a[$i];
}
Получает все SNMP объекты у агента.
Функции Vmailmgr
Эти функции требуют пакетов QMAIL (www.qmail.org) и vmailmgr Bruce Guenter http://www.qcc.sk.ca/~bguenter/distrib/vmailmgr/
Для всех функций следующие две переменные определяются как: строка vdomain - имя домена вашего виртуального домена (vdomain.com) , строка basepwd - пароль для 'real' пользователя, который поддерживает виртуальных пользователей.
Только до 8 символов распознаются в пароле для виртуальных пользователей.
Возвращается статус для всех функциональных значений ответа в response.h
O ok
1 плохой
2 ошибка
3 ошибка соединения
<?php
dl("php3_vmailmgr.so"); //load the shared library
$vdomain="vdomain.com";
$basepwd="password";
?>
vm_adduser Синтаксис :
int vm_adduser(string vdomain, string basepwd, string newusername, string newuserpassword);

Добавляет нового виртуального пользователя с паролем. newusername - это имя почтового login-а и newuserpassword - это пароль для это пользователя.
Добавляет нового виртуального пользователя с паролем.
vm_addalias Синтаксис :
int vm_addalias(string vdomain, string basepwd, string username, string alias);

Добавляет псевдоним виртуальному пользователю. username - это имя почтового login-а и alias - это псевдоним для этого пользователя.
Добавляет новый псевдоним для виртуального пользователя.
vm_passwd Синтаксис :
int vm_passwd(string vdomain, string username, string password, string newpassword);

Изменяет пароль виртуальных пользователей. username - это имя почтового login-а, password - старый пароль пользователя, и newpassword - новый пароль.
Изменяет пароль виртуальных пользователей.
vm_delalias Синтаксис :
int vm_delalias(string vdomain, string basepwd, string alias);
Удаляет всевдоним.
vm_deluser Синтаксис :
int vm_deluser (string vdomain, string username);
Удаляет псевдоним виртуального пользователя.
Календарные функции
JDToGregorian Синтаксис :
string jdtogregorian(int julianday);

Преобразование дневного Юлианcкого счета в Грегорианскую в формате "месяц/день/год"
Преобразование дневного Юлианcкого счета в Грегорианскую дату.
GregorianToJD Синтаксис :
int gregoriantojd(int month, int day, int year);

Правильный дипазон для Грегорианского календаря 4714 д.э. до 9999 н.э.

Хотя это программное обеспечение может оперировать даты в обратном порядке до 4714 д.э., такое использование может быть бесполезно и не значительно. Грегорианский календарь не был учрежден до Октября 15, 1582 (или Октябрь 5, 1582 в Юлианском календаре). Некоторые страны еще очень долго не принимали его. Например, Великобритания преобразовалась в 1752, СССР в 1918 и Греции в 1923. Наиболее Европейские страны использовали Юлианский Календарь До Грегорианского.
Пример :
<?php
$jd = GregorianToJD(10,11,1970);
echo("$jd\n");
$gregorian = JDToGregorian($jd);
echo("$gregorian\n");
?>
Преобразовывает Грегорианскую дату на Дневный Юлианский cчет.
JDToJulian Синтаксис :
string jdtojulian(int julianday);

Преобразование дневного Юлианского счета в строку, содержащую дату Юлианского Календаря в формате "месяц/день/год".
Преобразовывает дату Юлианского календаря на дневный Юлианский счет.
JulianToJD Синтаксис :
int juliantojd(int month, int day, int year);

Правильный дипазон для Юлианского календаря 4713 д.э. до 9999 н.э.

Хотя это программное обеспечение может оперировать даты в обратном порядке до 4713 д.э. такое использование может быть бесполезно и не значительно. Календарь был создан в 46 д.э., но подробные не стабилизировался до по крайней мере 8 н.э., и возможно познее в 4-ом столетии. Также, начало года различно от одной культуры к другой - не все соглашаются, что Январь это первый месяц.
Преобразовывает дату Юлианского Календаря на дневной Юлианский счет.
JDToJewish Синтаксис :
string jdtojewish(int julianday);
Преобразовывает дневной Юлианский счет в Еврейский календарь.
JewishToJD Синтаксис :
int jewishtojd(int month, int day, int year);

Еврейский календарь использовался в течение нескольких тысячалетий, но в течение начального периода не было никакой формулы, чтобы определить начало месяца. Новый месяц начинался когда замечено полнолуние.
Преобразовывает дату в Еврейском Календаре на дневной Юлианский счет.
JDToFrench Синтаксис :
string jdtofrench(int month, int day, int year);

Преобразовывает дневной Юлианский счет в Французский Республиканский календарь.
Преобразовывает дневной Юлианский счет в Французский Республиканский календарь.
FrenchToJD Синтаксис :
int frenchtojd(int month, int day, int year);

Эта программа преобразовывают даты в начиная с 1 до 14 (Грегорианские даты 22 Сентября 1792 до 22 1806 Сентября). Это покрывает тот период когда календарь использовался.
Преобразовывает дату и Французского Республиканского календаря в дневной Юлианский счет.
JDMonthName Синтаксис :
string jdmonthname(int julianday, int mode);

Возвращает строку с названием месяца. main сообщает функции, в какой календарь нужно преобразовать дневнрй Юлианский счет на, и какой тип месячных имен должен быть возвращен.
Календарные способы
0 Грегорианский - apreviated
1 Грегорианский
2 Юлианский - apreviated
3 Юлианский
4 Еврейский
5 Французский Республиканский
Возвращает название месяца.
JDDayOfWeek Синтаксис :
mixed jddayofweek(int julianday, int mode);

Возвращает день недели. Может возвратить строку(string) или int в зависимости от способа(mode).
Календарные недельные пути
Способ Значение
0 возвращает дневной номер как int (0=воскресенье, 1=понедельник, и т.п.)
1 возврат string содержание дня недели (английское-грегорианское)
2 возвращает string содержа abreviated дени недели (английский-грегорианский)
Возвращает день недели.


Яндекс цитирования Рейтинг@Mail.ru
Copyright © 2002 http://www.programmist.info/
[Копирайты] [Статистика сервера] [Обратная связь] [Авторам] [Реклама на сервере]