php - 删除 PHP 手动触发错误消息的最后一部分
问题描述
当有人提交包含单词列表中的关键字的联系表单时,我试图触发警告或错误消息。到目前为止,该错误有效,但我希望自定义消息在末尾不包含以下“在 /home/austincyberknife/public_html/wp-content/plugins/Custom_Caldera_Spam_Filter.php_/Custom_Caldera_Spam_Filter.php 第 83 行”消息。那可能吗?错误是提示用户在没有该术语的情况下重新提交他们的联系表,并且不需要查看错误的来源。
if( $block ){
//Error Message
trigger_error("WARNING: INVALID COMMENT. PLEASE REMOVE COMMENT AND HIT SUBMIT.", E_USER_ERROR);
}else{
//Email address that gets the other messages
$mailer[ 'recipients' ] = array( 'email@email.com' );
}
return $mailer;
编辑 - 我最终将它添加到 functions.php 文件中,它似乎正在工作。
/************************************************************/
/* Contact Spam Error */
/************************************************************/
// error handler function
function myErrorHandler($errno, $errstr, $errfile, $errline)
{
if (!(error_reporting() & $errno)) {
// This error code is not included in error_reporting
return;
}
switch ($errno) {
case E_USER_ERROR:
echo "<b>WARNING:</b> $errstr<br />\n";
exit(1);
break;
}
/* Don't execute PHP internal error handler */
return true;
}
// set to the user defined error handler
$old_error_handler = set_error_handler("myErrorHandler");
解决方案
推荐阅读
- flutter - 在 Flutter 应用程序中模块化可重用功能的最佳方式是什么?
- html - VBA 自动化 - Div 对象不可点击
- java - 当我把它放在 try 块中时按钮不起作用
- utf-8 - utf8的字节片也是utf8吗?
- shell - w3m:伪造的 JavaScript 和用户代理
- java - DateTimeFormatter 解析带有区域偏移量和时区的字符串
- php - file_get_contents 证书验证失败
- ssl - Kubernetes:x509 证书由未知权威签署,可能是因为 ECDSA 验证失败
- nginx - 如何强制来自服务器(nginx)的浏览器忽略旧的重定向命令(301)?
- xml - XSLT 1.0 由多个子节点分组的父节点分组