gpt4 book ai didi

Perl如何检测是从命令行运行还是从浏览器调用

转载 作者:行者123 更新时间:2023-12-02 07:28:21 24 4
gpt4 key购买 nike

有没有一种好方法可以检测 Perl 脚本是从终端/DOS 调用还是从 Web 服务器调用。

我目前有这个代码:

sub cli {
# return 1 if called from browser, 0 if called from command line
if (defined $ENV{GATEWAY_INTERFACE} || exists $ENV{HTTP_HOST}){
return 0;
}
return 1;
}

但请注意,并非所有服务器都设置了这些 ENV 变量。

如果脚本从终端运行,我将打印文本/纯格式的消息,如果从浏览器运行,我将打印 HTML 格式的消息。

最佳答案

我通常这样做:

if (-t STDIN) {
//This is running from a terminal
}

阅读评论后编辑:我发现了另一个详细说明不同解决方案的问题:How do I check if a Perl script is running in a terminal? .

关于Perl如何检测是从命令行运行还是从浏览器调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25071493/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com