在命令行PHP中隐藏HTML
用PHP打印出的内容基本上对于任何程序都是必不可少的,但是如果您需要使用相同的脚本进行命令行脚本和网站脚本编写,则可能会出现问题,因为需要打印HTML。$_SERVER超级全局数组包含一个名为SERVER_PROTOCOL的变量,该变量包含客户端用来访问脚本的协议。如果客户端通过Web访问,则协议将包含“HTTP1.1”之类的内容。如果脚本是从命令行运行的,则此超级全局变量SERVER_PROTOCOL将存在。
因此,根据协议变量是否存在,可以打印出HTML或换行符。当SERVER_PROTOCOL变量存在时,可以使用以下函数代替该print()函数来打印HTML
标记,而在不存在该变量时,可以使用以下函数来换行。
function printLine($string) { if (isset($_SERVER['SERVER_PROTOCOL'])) { print $string_message.'
'; } else{ print $string_message."\n"; } }
可以按以下方式在浏览器窗口中使用它:
printLine("Hello,world!");//Hello,world!
或在命令行(也称为外壳程序)上运行:
printLine("Hello,world!");//Hello,world!\n
该代码可以适应您需要执行的任何操作。