• 在编程开发过程中,有时候难免会需要调用Linux系统下的 Shell 命令来辅助完成一些相关的操作,那么在 PHP 编程开发中如何才能调用系统下的shell命令呢? 下面介绍3种调用的方法: shell_exec( )、system( )、exec...

    【导读】

    在编程开发过程中,有时候难免会需要调用Linux系统下的 Shell 命令来辅助完成一些相关的操作,那么在 PHP 编程开发中如何才能调用系统下的shell命令呢?

    下面介绍3种调用的方法:  shell_exec( )、system( )、exec( )

    【实际操作】

    (1)shell_exec( "command")

    功能:将指令传至系统的shell中执行,并返回其执行结果。

    例子:

    <?php
    $result = shell_exec("ls");
    echo $result;
    ?>

    (2)system("command", $out)

    功能:将指令传至系统的shell中执行,并返回(显示)结果。

    返回:$out参数为可选参数,加载时会返回命令的" 执行结果 "和" 执行状态码 ",状态码: 0:成功,1:失败!

    例子:

    <?php 
    $a = system("dir", $out); 
    print_r($a); 
    print_r($out);
    ?> 

    (3)exec("command", $out, $status)

    功能:将指令传至系统的shell中执行,结果返回到$out中,$status为执行状态【0:成功,1:失败】。

    例子:

    <?php 
    $a = exec("ls",$out,$status); 
    print_r($a); 
    print_r($out); 
    print_r($status); 
    ?> 

    PS:执行时,注意文件的权限问题。

    展开全文
  • 今天实验一下用PHP调用自己编写的dll文件。php的强大之处与扩展性就在这里,来让我们一起走起来。在php.ini中配置dll文件这样配置完毕后,然后使用gacutil将程序集添加进系统缓存好了,现在开始php出场了。执行结果...

    今天实验一下用PHP调用自己编写的dll文件。php的强大之处与扩展性就在这里,来让我们一起走起来。


    设置“使程序集com可见”


    给程序添加签名


    在php.ini中配置dll文件


    这样配置完毕后,还是不能用的,使用gacutil将程序集添加进系统缓存


    好了,现在开始php出场了。


    执行结果:


    能调用dll后,我们能用这个功能做点什么,还需要发挥无限的想象,PHP真的好可爱:)

    展开全文
  •  上传好视频后,PHP后台自动选取视频流中的某一帧作为视频封面。 2、工具:FFmpeg  FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序,功能很强大。 笔者并没有深入了解和研究...
    1、需要实现的功能:
    

            上传好视频后,PHP后台自动选取视频流中的某一帧作为视频封面。

    2、工具:FFmpeg

          FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序,功能很强大。

    笔者并没有深入了解和研究这个伟大的项目。只是为了实现上述功能。(在搜索工具的过程中,还搜到了php-FFmpeg,这是一个面向对象的FFmpeg / AVConv音视频文件转换库,但是它需要安装FFmpeg,觉得麻烦就没弄。)

    3、解决方案:

    1. 下载FFmpeg(for Windows):http://ffmpeg.zeranoe.com/builds/  (其他版本可上官网上搜:http://ffmpeg.org/),我下的是shared版的,static版本的下载不下来,下载时一直中断。因此不知道两个版本具体差别。
    2. 解压,将bin文件夹下的所有文件包括.exe和.dll都拷贝到C:\Windows\System32中。
    3. 在php文件中调用system()或exec()方法来实现帧图像的提取。(注意:在php中路径字符串中‘\’需转义:“\\”)
    4. 测试用例:
      $name = md5(date('YmdHis')).".png";
      $from = "E:\\UPLOAD\\cw\\20150626\\558d0d11ae285.mp4";
      $to = "E:\\UPLOAD\\cover_images\\";
      $str = "ffmpeg -i ".$from." -y -f mjpeg -ss 3 -t 1 -s 740x500 ".$to.$name;
      system($str);

      $name = md5(date('YmdHis')).".png";
      $from = "E:\\UPLOAD\\cw\\20150626\\558d0d11ae285.mp4";
      $to = "E:\\UPLOAD\\cover_images\\";
      $str = "ffmpeg -i ".$from." -y -f mjpeg -ss 3 -t 1 -s 740x500 ".$to.$name;
      exec($str);

     

    展开全文
  • <?php header("Content-Type: text/html; charset=gb2312"); function my_exec($cmd, $input='') { $proc=proc_open($cmd, array(0=>array('pipe', 'r'), 1=>array('pipe', 'w'),
    <?php
    header("Content-Type: text/html; charset=gb2312");
    function my_exec($cmd, $input='')
    {
           $proc=proc_open($cmd, array(0=>array('pipe', 'r'),
                              1=>array('pipe', 'w'),
                              2=>array('pipe',  'w')),
                              $pipes);
          fwrite($pipes[0], $input); fclose($pipes[0]);
           $stdout=stream_get_contents($pipes[1]); fclose($pipes[1]);    
          $stderr=stream_get_contents($pipes[2]); fclose($pipes[2]);
           $rtn=proc_close($proc); return array( 'stdout'=>$stdout,
                                         'stderr'=>$stderr,
                                    'return'=>$rtn );
    }
          $need_run_file = __DIR__.'..\1\make.bat';
          $need_run_file = 'D:\xampp\htdocs\wu\1\make.bat';
          var_export(my_exec($need_run_file)); 
    ?>
    展开全文
  • PHP 调用Java Dubbo服务(Dubbo、Hessian、JsonRPC)

    Composer:

    Key Value
    包名 lornewang/idiot
    安装 composer require lornewang/idiot
    Composer https://packagist.org/packages/lornewang/idiot
    Github https://github.com/lornewang/idiot

    因 composer 没有稳定版本,安装失败。

    一、安装 lornewang/idiot 包依赖

    查看 lornewang/idiot 依赖

    {
      "name": "lornewang/idiot",
      "description": "PHP Dubbo Client in Zookeeper",
      "keywords": ["dubbo", "zookeeper"],
      "type": "library",
      "license": "MIT",
      "require": {
        "php": ">=5.4",
        "icecave/flax": "0.1.*"
      },
      "autoload": {
        "psr-4": {
          "Idiot\\": "src" 
        }
      }
    }

    安装 icecave/flax

    composer require icecave/flax

    二、安装 lornewang/idiot

    安装 lornewang/idiot

    mkdir vendor/lornewang
    cd vendor/lornewang/
    git clone https://github.com/lornewang/idiot.git

    三、修改composer配置

    "autoload":{
        "psr-4" : {
            "Idiot\\":"packages/lornewang/idiot/src/"                                    
        }
    }

    更新 composer

    composer dump-autoload

    四、测试

    include './vendor/autoload.php';
    
    use Idiot\Service;
    use Idiot\Type;
    
    $options = [
        "conn" => "10.60.0.63:2181",
        "path" => "com.noriental.encouragesvr.score.service.ScoreConfigService",
        "version" => "1.0.0"
    ];
    
    $service = new Service($options);
    $data = $service->invoke('getOneResourceMaxScore',[]);                                   
    print_r( $data );
    展开全文
  • 原作者charlee、原始链接http://tech.idv2.com/2007/07/06/use-local-so-in-php/某个功能被编译到so文件中,那么如何通过php调用它?...下面做一个简单的例子,使用的操作系统是Fedora Core 6。首先
  • 前言对于原生应用开发而言,调用系统匹配的应用进行分享是非常常见操作,今天我们来看一下,RN中如何封装这一个操作的。方法RN中存在一个模块Share, 即为调用匹配的app进行分享操作。在iOS中,通过调用一个包含’...
  • python中调用系统命令的方法还是有比较多的,os/command/subprocess模块中都有方法可以做到 **(1) os.system** **(2) os.popen** **(3) 使用模块commands模块** :getoutput和getstatusoutput **(4) subprocess**
  • 一、调用第三方的DLL 例: 代码如下: $b=new COM("Comtest.Class2"); $t1=126; $t2=456; $r=$b->add($t1,$t2); $f=$b->about(); echo $r; echo $f; ?> 其中:Comtest为命名空间,Class2为类名,add...
  • php调用c++程序例子

    2015-08-09 16:50:14
    现需要php调用c++程序,参考了网上一篇文章,修改后在本机(fedora7)上测试通过,现整理如下。一、 编写test.cpp程序 转到你的apache服务器的站点目录下(即放置web文件的目录),我的是 /var/www/html目录,在该...
  • nginx服务器是一款轻量级的服务器,目前应用的比较广泛。...首先就是Linux操作系统的不熟悉(算是一个小白)通过SSH客户端登陆后就看到命令行就完全摸不着了,只能硬着头皮恶补了一些Linux下的一些基本命令
  • 利用php调用so库文件中的代码和...下面做一个简单的例子,使用的操作系统是RHEL5。 首先做一个简单的so文件: /**  * hello.c  * To compile, use following commands:  * gcc -
  • import java.io.BufferedInputStream; import java.io.IOException; public class ExecLs { static public void main(String[] args) { String cmd = "ls" 
  • PHP中调用外部命令,可以用如下三种方法来实现:   方法一:用PHP提供的专门函数(四个): PHP提供4个专门的执行外部命令的函数:exec(), system(), passthru(), shell_exec() 1)exec() 原型: string ...
  • Java语言功能强大,因此在许多情况下在php中来调用Java的功能将十分有用。在php调用Java语言有两种方法,一种是使用php中的Java扩展模块,另一种是使用minij2ee应用服务器提供的SJOP协议实现。下面我们来比较一下...
  • 先小说两句:今天研究了下PHP调用LINUX命令的功能,一开始怎么做都调用不成功,试了好久才终于成功了,所以发出来分享一下。下面我将详细介绍:  PHP中提供了几个调用linux命令的函数,exec、system、passthru,...
  • 从封装层次来比较
  • php调用dll经验小结

    2010-12-14 10:54:00
    在做转换的时候遇到了性能上的问题:开始打算用php来实现转换,苦苦查了数天,都没有找到直接操作字节的方法。虽然可以使用 pack() 方法将各个数据压入结构中,但是在解压的时候却不能通过 unpack() 简单的解出来,...
  • 前言 操作系统是物联网时代的战略制高点,今天 PC 和手机时代的操作系统霸主未必能在物联网时代延续霸业。操作系统产业的规律是,当垄断已经形成,后来者就很难颠覆,只有等待下一次产业浪潮。如今,一个全新的、...
1 2 3 4 5 ... 20
收藏数 155,903
精华内容 62,361