• PHP与Python与其它脚本语言


    南京,微风,周五,晴。

    今天在这里记录下php的一个功能点:执行外部其它语言程序

    感觉很赞吧,是的,php可以执行外部程序,如python语言编写的脚本程序。

    先来知晓一下php的几个函数吧:

    1. exec()

    php标准解释是:执行一个外部程序,支持(PHP 4, PHP 5)。

    string exec ( string $command [, array &$output [, int &$return_var ]] )

    command

    要执行的命令。

    output

    如果提供了 output 参数, 那么会用命令执行的输出填充此数组, 每行输出填充数组中的一个元素。 数组中的数据不包含行尾的空白字符,例如  字符。

    请注意,如果数组中已经包含了部分元素,exec() 函数会在数组末尾追加内容。如果你不想在数组末尾进行追加, 请在传入 exec() 函数之前 对数组使用 unset()函数进行重置。

    return_var

    如果同时提供 output 和 return_var 参数, 命令执行后的返回状态会被写入到此变量。

    2. passthru()

    php标准解释是:执行外部程序并且显示原始输出,支持(PHP 4, PHP 5)。

    void passthru ( string $command [, int &$return_var ] )

    command

    要执行的命令。

    return_var

    如果提供 return_var 参数, Unix 命令的返回状态会被记录到此参数。

    举例:随便写几行python代码,保存文件到php可执行目录下,比如新建文件test.py,代码内容:

    import os
    print os.name

    新建文件test.php,代码内容:

    <?php
    passthru('test.py ');

    最后在php环境支持下运行test.php,即可看到python程序的输出:nt,执行成功!其实就是这么简单~

    3. system()

    php标准解释是:执行外部程序,并且显示输出,支持(PHP 4, PHP 5)。

    同 C 版本的 system() 函数一样, 本函数执行 command 参数所指定的命令, 并且输出执行结果。

    成功则返回命令输出的最后一行, 失败则返回 false

    By the way:  由于这些函数使用场景比较特殊,所以需要拓展一下,有兴趣可以研究下相关php内置函数:

    escapeshellcmd()

    escapeshellarg() 

    shell_exec() 

    popen()

    注:你的关注是我分享的最大乐趣

    欢迎关注微信公众号,挺有趣的,we_better~

  • 相关阅读:
    git 回滚到某个历史版本
    java值传递与引用传递
    Spring的事务管理
    MySql安装详细图解 以及卸载不干净解决方法
    如果你决定要出发,那么旅行中最困难的部分已经结束,出发吧!
    微信小程序总是提醒安装X5内核
    使用vuerouter实现返回
    手机上测试
    H5移动端知识点总结
    微信小程序授权问题
  • 原文地址:https://www.cnblogs.com/tris/p/4112738.html
Copyright © 2020-2023  润新知