【问题标题】:Php popen only returns bool(true) instead of a pointerphp popen 只返回 bool(true) 而不是指针
【发布时间】:2013-02-26 09:25:07
【问题描述】:

我想知道我的简单 popen() 调用只返回布尔值 TRUE 而不是资源。

因此,以下 fputs() 会抛出类似 “警告:fputs() 期望参数 1 为资源,布尔给定 [...]”的警告

如 Php 手册中所述,我希望得到资源/指针或 FALSE 作为回报。

这是我的例子:

$path = 'C:\path\to\oracle\product\11.2.0\server\bin\sqlplus.exe';
$ph = popen($path,'w') || die ("Program not found");
fputs($ph, "username/password"\n");

有人可以帮忙吗?!

【问题讨论】:

    标签: php popen


    【解决方案1】:

    改变:

    $ph = popen($path,'w') || die ("Program not found");$ph = popen($path,'w');

    删除||之后的所有内容并尝试。

    这里还有额外的引用:fputs($ph, "username/password"\n"); remove one fputs($ph, "username/password\n");

    【讨论】:

    • 现在,我对自己很生气;)
    【解决方案2】:

    仍然可以使用|| 语法,只需在前半部分添加括号即可。

    ($ph = popen($path,'w')) || die ("Program not found");
    

    【讨论】:

      猜你喜欢
      • 2012-01-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-11
      • 1970-01-01
      • 2015-12-28
      • 2012-09-26
      • 1970-01-01
      相关资源
      最近更新 更多