Читаем Справочник по PHP полностью

Array( [event] => SIGGRAPH [city] => San Francisco [state] => CA)

Почему же тогда параметры функции обозначены как mixed? Дело в том, что они могут быть не только строками, но и списками строк. В этом случае функция последнего перебирает все элементы этого списка, и упаковывает те переменные из текущего контекста, имена которых она встретила. Более того - эти списки могут, в свою очередь, также содержать списки строк, и т.д. Правда, последнее используется достаточно редко.

Пример использования функции compact():

$a="Test";

$b="Text";

$c="CCC";

$d="DDD";

$List=array("b",array("c","d"));

$A=compact("a",$List);

?>

Теперь:

// теперь $A===array("a"=>"Test", "b"=>"Text",

"c"=>"CCC", "d"=>"DDD")


Функция поддерживается PHP 4, PHP 5


extract


Импорт элементов массива в переменные.

Синтаксис:

int extract (array var_array [, int extract_type [, string prefix]])

Функция extract() используется для импортирования значений массива в строку. Эта функция берет ассоциативный массив var_array, использую ключ элемента как имя переменной, а значение элемента как значение полученной переменной. Для создания переменных из пары ключ = значение можно также использовать необязательные параметры extract_type и prefix.

Замечание: начиная с PHP версии 4.0.5 эта функция возвращала количество извлеченных переменных.

Функция extract() проверяет, действительно ли каждый ключ массива может быть названием переменной. Она также проверяет на наличие одинаковых названий получаемых переменных. В случае, если обнаруживаются недействительные или числовые ключи, поведение функции предопределяет параметр extract_type, который может принимать следующие значения:

Пример использования функции extract():


/* Предположим, что $var_array массив,

полученный при помощи функции wddx_deserialize */


$size = "large";

$var_array = array("color" => "blue",

"size" => ""medium",

"shape" => "sphere");

extract($var_array, EXTR_PREFIX_SAME, "wddx");


echo "$color, $size, $shape, $wddx_sizen";

?>

Пример выведет:

blue, large, sphere, medium

Здесь переменная $size не была переписана, т.к. мы указали параметр EXTR_PREFIX_SAME. Если указать EXTR_SKIP, тогда переменная $wddx_size даже не была бы создана. Если указать EXTR_OVERWRITE, то переменная $size имела бы значение "medium". Если EXTR_PREFIX_ALL - то в результате были бы созданы переменные $wddx_color, $wddx_size, и $wddx_shape.

Лучше всего использовать ассоциативные массивы. Массивы с цифровыми ключами не могут быть использованы в этой функции, если установлены флаги EXTR_PREFIX_ALL или EXTR_PREFIX_INVALID.

Функция поддерживается PHP 3 = 3.0.7, PHP 4, PHP 5

Строковые функции


chr


Возвращает один символ с определенным кодом.

Синтаксис:

string chr(int ascii)

Возвращает строку из одного символа с кодом $code. Эта функция полезна для вставки каких-либо непечатаемых символов в строку - например, кода нуля или символа прогона страницы, а также при работе с бинарными файлами.

// Сначало создаем массив того, что мы собираемся выводить,

// не заботясь о форматировании (дизайне) информации

for($i=0, $x=0; $x<16; $x++) {

for($y=0; $y<16; $y++) {

$Chars[$x][$y]=array($i,chr($i));

$i++;

}

}

// Теперь выводим накопленную информацию, используя идеологию

// вставки участков кода в HTML-документ

?>


:


ord


Возвращает ascii код символа.

Синтаксис:

int ord(string str)

Эта функция возвращает ASCII код первого символа строки str.Например, ord(chr($n)) всегда равно $n - конечно, если $n заключено между нулем и 255.

Функции для работы с одиночными символами


chr


Возвращает один символ с определенным кодом.

Синтаксис:

string chr(int ascii)

Возвращает строку из одного символа с кодом $code. Эта функция полезна для вставки каких-либо непечатаемых символов в строку - например, кода нуля или символа прогона страницы, а также при работе с бинарными файлами.

// Сначало создаем массив того, что мы собираемся выводить,

Перейти на страницу:

Похожие книги