这篇文章主要介绍“PHP命令行shell_exec()的使用”,在日常操作中,相信很多人在php命令行shell_exec()的使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”PHP命令行shell_exe
这篇文章主要介绍“PHP命令行shell_exec()的使用”,在日常操作中,相信很多人在php命令行shell_exec()的使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”PHP命令行shell_exec()的使用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
PHP CLI Sapi 允许您开发 PHP 支持的 shell 脚本,甚至是基于桌面的脚本。事实上,可以用PHP命令行运行的工具。采用这种方式,PHP 开发人员可以像 Perl、AWK、Ruby 或 shell 程序员一样高效。本文探究构建到 PHP 中的工具,让您了解 PHP 运行的底层 shell 环境和文件系统。PHP 为执行外部命令提供大量函数,其中包括 shell_exec()、exec()、passthru() 和 system()。这些命令是相似的,但为您运行的外部程序提供不同的界面。所有这些命令都衍生一个子进程,用于运行您指定的命令或脚本,并且每个子进程会在命令输出写到标准输出 (stdout) 时捕捉它们。
shell_exec()
shell_exec() 命令行实际上仅是反撇号 (`) 操作符的变体。如果您编写过 shell 或 Perl 脚本,您就知道可以在反撇号操作符内部捕捉其他命令的输出。例如,清单 1 显示了如何使用反撇号在当前目录中获取每个文本(.txt)的单词计数。
PHP命令行概述
清单 1. 使用反撇号计算单词数量
#! /bin/sh number_of_Words=`wc -w *.txt` echo $number_of_words #result would be something like: #165 readme.txt 388 results.txt 588 summary.txt #and so on....
在您的 PHP 脚本中,您可以在 shell_exec() 中运行这个简单的命令,如清单 2 所示,并获取想要的结果。这里假设在同一个目录下有一些文本文件。
清单 2. 在 shell_exec() 中运行相同的命令
<?php $results = shell_exec('wc -w *.txt'); echo $results; ?>
注意,仅使用后撇号操作符也会得到相同的结果,如下所示。
清单 3. 仅使用后撇号操作符
<?php $results = `wc -w *.txt`; echo $results; ?>
清单 4. 更加简单的方法
<?php echo `wc -w *.txt`; ?>
通过 UNIX 命令行和 shell 脚本能够完成很多东西,知道这点很重要。例如,您可以使用竖线将命令连接起来。您甚至可以使用操作符在其中创建 shell 脚本,并且仅调用 shell 脚本(根据需要使用或不使用参数)。例如,如果您仅希望计算该目录下的前 5 个文本文件的单词数,那么可以使用竖线 (|) 将 wc 和 head 命令连接起来。另外,您还可以将输出结果放到 pre 标记内部,让它能够更美观地呈现在 WEB 浏览器中,如下所示。
清单 5. 更加复杂的 shell 命令
<?php $results = shell_exec('wc -w *.txt | head -5'); echo "<pre>".$results . "</pre>"; ?>
到此,关于“PHP命令行shell_exec()的使用”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!
--结束END--
本文标题: PHP命令行shell_exec()的使用
本文链接: https://lsjlt.com/news/292467.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0