来自包含页面的PHP die()不会从主页面死亡

Pro*_*sor 4 php

有没有办法使用该die()函数停止在另一个页面上包含的页面上执行PHP语句,但是在包含该die()函数的文件的页面上继续执行PHP语句?

ple*_*ock 10

使用return;您的包含文件.它会阻止这包括执行.它就像一个功能.您也可以从包含的文件中返回一个值

  • 这是搜索正确的引用和PHP文档链接的价格..你快3分钟:-( (2认同)

Kai*_*aii 9

No. die是一个别名,exit可立即停止所有脚本执行.

但是你可以使用return它,它完全符合你的要求:

如果从全局范围调用,则结束当前脚本文件的执行.如果include()编辑或require()编辑了当前脚本文件,则将控制权传递回调用文件.此外,如果编辑了当前脚本文件include(),则给定的值return()将作为include()调用的值返回.如果return()从主脚本文件中调用,则脚本执行结束.

正如PHP文档的摘录中所述,您甚至可以使用它从include中返回退出代码/返回值:

$include_retval = include('file_like_function.php');
if ($include_retval) {
    die("include returned error code: " . $include_retval);
}
Run Code Online (Sandbox Code Playgroud)