set_magic_quotes_runtime
(PHP 4, PHP 5)
set_magic_quotes_runtime — Установка текущего значения настройки magic_quotes_runtime
Описание
$new_setting
)Задает текущее активное значение настройки magic_quotes_runtime.
С версии PHP 5.3.0 эта функция считается УСТАРЕВШЕЙ. Крайне не рекомендуется полагаться на эту возможность.
Ошибки
С версии PHP 5.3 эта функция устарела и при запуске вызывает предупреждение E_DEPRECATED. С версии PHP 5.4 эта функция также вызывает ошибку E_CORE_ERROR при попытке включить magic quotes.
Список параметров
-
new_setting
-
FALSE
- выключено,TRUE
- включено.
Возвращаемые значения
Возвращает TRUE
в случае успешного завершения или FALSE
в случае возникновения ошибки.
Примеры
Пример #1 Пример использования set_magic_quotes_runtime()
<?php
// Создаем временный указатель на файл
$fp = tmpfile();
// Пишем в файл какие-то данные
fwrite($fp, '\'PHP\' is a Recursive acronym');
// без magic_quotes_runtime
rewind($fp);
set_magic_quotes_runtime(false);
echo 'без magic_quotes_runtime: ' . fread($fp, 64), PHP_EOL;
// С magic_quotes_runtime
rewind($fp);
set_magic_quotes_runtime(true);
echo 'С magic_quotes_runtime: ' . fread($fp, 64), PHP_EOL;
// Clean up
fclose($fp);
?>
Результат выполнения данного примера:
без magic_quotes_runtime: 'PHP' is a Recursive acronym С magic_quotes_runtime: \'PHP\' is a Recursive acronym
Смотрите также
- get_magic_quotes_gpc() - Получение текущего значения настройки конфигурации magic_quotes_gpc
- get_magic_quotes_runtime() - Получение текущего значения настройки конфигурации magic_quotes_runtime
- PHP Руководство
- Функции по категориям
- Индекс функций
- Справочник функций
- Изменение поведения PHP
- PHP Опции и Информация
- assert_options
- assert
- cli_get_process_title
- cli_set_process_title
- dl
- extension_loaded
- gc_collect_cycles
- gc_disable
- gc_enable
- gc_enabled
- gc_mem_caches
- get_cfg_var
- get_current_user
- get_defined_constants
- get_extension_funcs
- get_include_path
- get_included_files
- get_loaded_extensions
- get_magic_quotes_gpc
- get_magic_quotes_runtime
- get_required_files
- get_resources
- getenv
- getlastmod
- getmygid
- getmyinode
- getmypid
- getmyuid
- getopt
- getrusage
- ini_alter
- ini_get_all
- ini_get
- ini_restore
- ini_set
- magic_quotes_runtime
- main
- memory_get_peak_usage
- memory_get_usage
- php_ini_loaded_file
- php_ini_scanned_files
- php_logo_guid
- php_sapi_name
- php_uname
- phpcredits
- phpinfo
- phpversion
- putenv
- restore_include_path
- set_include_path
- set_magic_quotes_runtime
- set_time_limit
- sys_get_temp_dir
- version_compare
- zend_logo_guid
- zend_thread_id
- zend_version
Коментарии
get_magic_quotes runtime and set_magic_quotes_runtime are useful when you want to read some data in a binary file using fread() and some bytes in such file may be interpreted as \ (backslash), " (double quotes), ' (simple quote) or any "special" character that has a meaning for string processing.
You should NEVER rely on magic quotes or addslashes for security in an SQL context. You should ALWAYS use proper escape functions, such as mysql_real_escape_string. Failure to do so may result in an SQL injection vulnerability.
Be aware that even using ini_set to set 'magic_quotes_runtime' will stop working in PHP 5.4. See info.configuration#ini.magic-quotes-runtime
A simple check and disabling of magic quotes whenever needed (e.g. if you deploy to multiple servers or you don't know the target server's PHP version).
<?php
if(version_compare(PHP_VERSION, '5.3.0', '<')){
set_magic_quotes_runtime(0);
}
?>