>  기사  >  백엔드 개발  >  PHP에서 Register_shutdown_function 함수의 구체적인 적용(자세한 설명 포함)

PHP에서 Register_shutdown_function 함수의 구체적인 적용(자세한 설명 포함)

烟雨青岚
烟雨青岚앞으로
2020-06-08 15:33:502613검색

PHP에서 Register_shutdown_function 함수의 구체적인 적용(자세한 설명 포함)

PHP에서 Register_shutdown_function 적용(자세한 설명 포함)

어떤 경우에는 프로그램 실행 마지막에 후속 처리 작업을 해야 할 경우, 이때 php의 Register_shutdown_function 함수를 구현해 보겠습니다. 이 기능.

一 Register_shutdown_function 소개

PHP 프로그램이 실행되면 Register_shutdown_function 함수가 자동으로 실행됩니다. 이 함수에는 이러한 후속 작업을 처리할 사람을 지정하는 매개 변수가 필요합니다. 그 중 프로그램 실행이 완료되었는데, 이는 다음과 같은 상황으로 나누어집니다.

⑴ PHP 코드 실행 중 오류가 발생했습니다.

⑵ PHP 코드가 성공적으로 실행되었습니다.

⑶ PHP 코드가 시간 초과되어 실행되었습니다. out

⑷ 페이지가 사용자에 의해 강제로 중지되었습니다.

二 Register_shutdown_function 함수를 사용하는 단계

register_shutdown_function 함수는 사용이 매우 간단하며 최대 2단계입니다.

1. CustomHandle.php라는 이름으로 PHP 클래스를 다음과 같이 사용자 정의합니다.

<?php
namespace com\antp;
class CustomHandle {
public static function systemError() {
$message = &#39;&#39;;
if ($error = error_get_last()) {
//程序报错处理,通常会跳转到用户自定义的页面,同时记录错误信息
$separator = "\r\n";
$message .= "错误:" . $error[&#39;message&#39;] . $separator;
$message .= "文件:" . $error[&#39;file&#39;] . $separator;
$message .= "行数:" . $error[&#39;line&#39;] . $separator;
$message = str_replace($separator, &#39;<br />&#39;, $message);
header(&#39;Location:http://&#39;.$_SERVER[&#39;HTTP_HOST&#39;].&#39;/error.php&#39;);
exit;
}else{
//此处处理其它一些业务逻辑
}
}
}

2. 등록 기능을 도입합니다.

프로그램 입구에서 CustomHandle.php 파일을 도입합니다. ,register_shutdown_function을 등록합니다. 함수는 다음과 같습니다.

require &#39;CustomHandle.php&#39;;
register_shutdown_function(array(&#39;com\antp\CustomHandle&#39;,&#39;systemError&#39;));

이때, PHP 코드가 성공적으로 실행되었는지 여부에 관계없이 결국 CustomHandle 클래스의 systemError 메서드에 도달하게 됩니다.

——————————————

저작권 표시: 이 기사는 CSDN 블로거 "무유 삼촌"의 원본 기사이며 CC 4.0 BY-SA 저작권 계약을 따릅니다. 원문을 첨부해 주세요. 출처와 이 진술에 대한 링크를 재인쇄할 때.

원본 링크: https://blog.csdn.net/tdcqfyl/article/details/52291237

추천 튜토리얼: "PHP 튜토리얼"

위 내용은 PHP에서 Register_shutdown_function 함수의 구체적인 적용(자세한 설명 포함)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제