• 技术文章 >后端开发 >php教程

    fread读不到popen值,但在命令行下运行正常

    2016-06-23 14:13:37原创878
    fread读不到popen值

    $output = '';$pipe = popen($somecommand, 'r');	while(!feof($pipe)){ $output .= fread($pipe, 1024);}


    在命令行下执行$somecommand可以正常显示,可运行上述代码时却取不到值,望达人协助。


    回复讨论(解决方案)

    你需要确认:
    1、$somecommand 是进程而不是线程
    2、$somecommand 是向标准输出写的

    这种应用在测试环境玩玩还可以。如果正式环境出于安全考虑禁用了此类函数,那不就玩完了?

    你需要确认:
    1、$somecommand 是进程而不是线程
    2、$somecommand 是向标准输出写的

    这种应用在测试环境玩玩还可以。如果正式环境出于安全考虑禁用了此类函数,那不就玩完了?
    很久没来CSDN了,唠叨版主亲自解答,先行谢谢。之前也有考虑安全与效率问题想换成socket去调用;这边再请教下唠叨:在PHP中如果类似的应用有什么比较好的解决方案,从而可以获取调用的值?谢谢

    $output = '';$pipe = popen($somecommand, 'r');	while(!feof($pipe)){ $output .= fread($pipe, 1024);}


    在命令行下执行$somecommand可以正常显示,可运行上述代码时却取不到值,望达人协助。
    你命令中加一个这个“2>&1”,我是在这里看到的:http://blog.csdn.net/kangear/article/details/9141481
    我用的命令是dd,和你问题一样,加上那个就OK了。
    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇:ckeditor的安全性问题 下一篇:将文件从远程下载后不经硬盘保存,直接上传至另一服务器,怎么做啊
    Web大前端开发直播班

    相关文章推荐

    • PHP详细解析之phar• 取数目字的正则方法• js代码会实现图片显示吗• 忽然发现这周有点忙。着玩-PHP进阶• echo 的一部分用法

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网