string highlight_file(string filename, boolean return_instead)
Функция highlight_file (листинг 9.83) распечатывает сценарий PHP в браузере с применением синтаксического выделения. Код HTML используется для выделения частей кода PHP, чтобы повысить удобочитаемость. Если необязательный аргумент return_instead имеет значение TRUE, PHP возвращает HTML-код, а не распечатывает его.

Листинг 9.83. Функция highlightfile

<?php
//выделить этот файл highlight_file(_FILE_);
?>

string highlight_string(string code, boolean return_instead)
Функция highlight_string (листинг 9.84) выводит строку кода PHP в браузере с выделением синтаксиса. Если необязательный аргумент return_instead имеет значение TRUE, PHP возвращает HTML-код, а не распечатывает его.

Листинг 9.84. Функция highlight_string

<?php
// создать какой- то код
$code = "<?php print("a string"); ?>"; // выделить образец кода
$source = highlight_string($code, TRUE);
// показать HTML- код, используемый PHP для выделения кода print(htmlentities($source));
?>

array iconv_get_encoding(string type)
Функция iconv_get_encoding возвращает используемые типы кодирования. Аргумент type может принимать значение all, input_encoding, internal_encoding или output_encoding. При значении all PHP возвращает массив ключей, соответствующий всем трем типам кодирования. При выборе одного типа кодирования PHP возвращает строку.
С помощью функции iconv_set_encoding можно установить кодирование iconv. С помощью функции iconv или дескриптора ob_iconv_handler можно транслировать текст.
boolean is_callable(string function, boolean syntax, string name) boolean is_callable(array method, boolean syntax, string name)
Для проверки наличия функции или метода объекта для работы используется функция is_callable (листинг 9.85). Имя функции передается в виде строки или двухэлементного массива, в котором указывается метод объекта. Первый элемент этого массива является именем или экземпляра класса. Второй элемент должен представлять собой строку, содержащую имя метода.
Необязательный аргумент syntax подавляет любую проверку функции. В этом режиме PHP проверяет синтаксис только второго элемента. Необязательный третий аргумент получает имя функции или проверяемого метода. Это имеет смысл только тогда, когда вы хотите сообщить пользователю о том, что функция отсутствует.

Листинг 9.85. Функция iscallable

<?php
//Вызвать функцию, если она доступна function callIfPossible($f, $arg=FALSE)
{
//если нет аргументов, использовать пустой массив
if($arg === FALSE)
$arg = array();
if(is_callable($f, FALSE, $callName))
call_user_func_array($f, $arg);
else
print("Невозможно вызвать $callName<br>");
}}
//Тестируемые функции function a()
{
print('функция a<br>');
}
class c
{
function m()
{
print('метод m<br>');
}

 } 

// встроенная функция
callIfPossible('print_r', array('print_r<br>')); //технически не является функцией callIfPossible('print', array('print<br>')); // пользовательская функция callIfPossible('a'); //не существует callIfPossible('b'); // метод класса
callIfPossible(array(,c', 'm')); // не существует
callIfPossible(array(,d', 'm')); //метод объекта
$C = new c;
callIfPossible(array($C, 'm')); // не существует
callIfPossible(array($C, 'x'));
?>

boolean leak(integer bytes)
Функция leak (листинг 9.86) занимает часть памяти и полезна для тестирования программ сбора мусора самого PHP. Вы также можете использовать эту функцию для моделирования переполнения памяти.

| Листинг 9.86. Функция leak
<?php
//занять 8 Мбайт leak(8388608);
?>
Операционная система
Операционная система
array localeconv()
Функция localeconv возвращает массив с описанием форматирования, используемого текущей локалью. Эта функция вызывает одноименную C-функцию и информацию о ней можно почерпнуть на соответствующей справочной странице. Это значение можно изменить с помощью функции setlocale. В табл. 9.17 приведены элементы возвращаемого массива.