代码之家  ›  专栏  ›  技术社区  ›  Frxstrem

如何在PHP中设置$PATH?

  •  8
  • Frxstrem  · 技术社区  · 14 年前

    我现在正在做我自己的小项目,但是我有一个小问题:我想把$PATH环境变量设置为 ./bin 所以当我使用 exec() 和类似的函数,它只会搜索该目录中的二进制文件(除非我明确告诉它)。

    putenv() ,除非我启用了安全模式,否则它将不起作用,我不希望启用安全模式;而且我也尝试了 apache_setenv() ,但这似乎也不管用。

    有没有其他的解决方案我想试试?

    4 回复  |  直到 14 年前
        1
  •  6
  •   Artefacto    14 年前

    如果只想在特定情况下设置,可以执行以下操作:

    exec("PATH=/my/path ./bin");
    
        2
  •  4
  •   Peter O. Manuel Pinto    13 年前

    http://lists.apple.com/archives/macos-x-server/2008/Sep/msg00433.html

    正如那篇文章所说:

    [A] 将以下文本添加到[文件] /System/Library/LaunchDaemons/org.apache.httpd.plist ]在第五

    <key>EnvironmentVariables</key> 
    <dict>
    <key>PATH</key>
    <string>/usr/bin:/bin:/usr/sbin:/sbin:/opt/local/bin</ string>
    </dict>
    

    有关详细信息,请参阅手册页 launchd.plist(5) 有关语法的详细信息,我

    如果需要将PHP命令作为CLI会话运行,还需要 /opt/local/bin 作为一条新的道路 /etc/paths.d 工作。例如,类似这样的情况:

    shell> sudo echo "/opt/local/bin" >> /etc/paths.d/macports
    

    有关详细信息,请参阅手册页 path_helper(8)

        3
  •  2
  •   muhmuhten    14 年前

    bin foo ,为什么不直接调用 bin/foo ?

        4
  •  0
  •   canni    14 年前