Что делает register_shutdown_function
?
Я не понимаю, как это использовать и что он делает. Я знаю, что вы можете использовать его и хорошо сочетаться с пользовательским обработчиком ошибок, но я не знаю, что пройти через него, что с ним делать и т. Д.
Может кто-нибудь объяснить это в самых простых условиях для этого новичка кодирования?
На самом деле это довольно простая функция. Итак, у вас есть php-скрипт:
<?php echo "Here is my little script"; function endScript(){ echo "My little Script has finished"; } register_shutdown_function('endScript'); ?>
В основном, что происходит, ваш скрипт запускается и когда он закончен, потому что мы добавили эту строку register_shutdown_function('endScript');
он вызывается функцией endScript и, наконец, выводит My little script has finished
.
Вот немного дополнительной информации из документации :
Регистрирует обратный вызов, который должен быть выполнен после завершения выполнения сценария или вызывается (). Можно сделать несколько вызовов register_shutdown_function (), и каждый из них будет вызываться в том же порядке, в каком они были зарегистрированы. Если вы вызываете exit () в пределах одной зарегистрированной функции выключения, обработка полностью прекратится, и никакие другие зарегистрированные функции выключения не будут вызваны.
*Обновить
Большим преимуществом для него является то, что вы часто используете функцию, называемую exit()
в php.
Например:
<?php function endScript(){ echo "My little Script has finished"; } register_shutdown_function('endScript'); $result = some_intricate_function() if($result == 0){ exit(); } $result = some_other_intricate_function() if($result == 0){ exit(); } /* and this keeps reoccurring */ ?>
Теперь обратите внимание, что даже если вы вызываете exit несколько раз, вам не нужно вызывать функцию endScript
перед выходом каждый раз. Вы зарегистрировали его в начале, и теперь вы знаете, что если вы когда-нибудь выйдете или ваш скрипт закончится, ваша функция будет вызвана.
Теперь, конечно, моя функция отключения довольно бесполезна; но это может стать полезным, если вам нужно очистить вещи (например, закрыть открытые дескрипторы файлов, сохранить некоторые постоянные данные и т. д.),
register_shutdown_function
регистрирует крюк выключения, который является функцией, которая должна выполняться при выключении скрипта. Он выполняет функцию обратного вызова как параметр, который выполняет функцию.
Я рекомендую вам проверить документацию функции.