使用PHP的set_error_handler()
函数,可以使可调用函数接收一些参数,其中一个是错误字符串。这是我在测试中收到的示例错误字符串(我引发了错误):
parse_ini_file(/MyPath/App/Config/Database2.ini) [<a href='function.parse-ini-file'>function.parse-ini-file</a>]: failed to open stream: No such file or directory
您会注意到它包含一个指向
parse_ini_file()
函数的链接,该链接应指向类似以下内容的内容:http://us1.php.net/manual/en/function.parse-ini-file.php
我的问题是,将 http://us1.php.net/manual/en/部分添加到该字符串中的路径的最简单方法是什么?是否可以在其中设置基本URL的功能,还是必须手动用
preg_replace()
这样的字符串替换字符串?在我看来,默认情况下仅指向文件名似乎很奇怪……除了文本处理外,还必须有一个用于修复该链接的标准程序。有任何想法吗?
最佳答案
由于没有收到任何答案,我最终使用了preg_replace()
解决方案。如果有人尝试做同样的事情,请在您的错误处理程序函数中执行以下操作:
function myErrorHandler($errno, $errstr, $errfile, $errline)
{
$pattern = "/(.*)(href=')(.*)(')(.*)/i";
$errstr = preg_replace($pattern, "$1target='_blank' $2http://us1.php.net/manual/en/$3$4$5", $errstr);
echo($errstr);
}
关于php - 正确的set_error_handler()函数引用链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14406696/