在Perl中,如何禁用在必需脚本中加载的CGI :: Carp?

前端之家收集整理的这篇文章主要介绍了在Perl中,如何禁用在必需脚本中加载的CGI :: Carp?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个小的Perl程序,我想在命令行上运行.我需要另一个其他人编写的Perl脚本(不是模块).反过来,这需要一些其他脚本. (我无法对这种方式做任何事情).

现在,其中一个脚本使用CGI真的很烦人;并在其中使用CGI :: Carp qw(fatalsToBrowser).我不要那个.每次出现故障时,我的控制台上有15行500内部服务器错误页面真的让我感到紧张.我试过了

require 'otherscript.pl';
no CGI;
no CGI::Carp;

no CGI;
no CGI::Carp;
require 'otherscript.pl';

卸载它,就像use doc描述的那样,但它不起作用.

我可以以某种方式操纵符号表或做一些其他魔法来摆脱它吗?

解决方法

CGI :: Carp包中没有任何不重要的例程,因此没有任何效果.手动撤消导入例程的相关部分.

词汇范围(见caveat):

local $main::SIG{__DIE__} = \&CGI::Carp::realdie;

全球范围:

CGI::Carp::set_die_handler(\&CGI::Carp::realdie);

猜你在找的Perl相关文章