升级到 Mac OS x Mavericks 10.9 后执行 php 文件时出错


Error executing php files after upgrading to mac os x Mavericks 10.9

升级到 10.9 Mavericks 后,我在尝试运行 php 脚本时出现以下错误。

我正在使用Zend Server,并禁用了默认的httpd和php。在升级之前一切正常。

例子:

phpunit:

/usr/local/bin/phpunit: line 2: ?php: No such file or directory
/usr/local/bin/phpunit: line 3: /Applications: is a directory
/usr/local/bin/phpunit: line 4: LICENSE.html: command not found
/usr/local/bin/phpunit: line 5: syntax error near unexpected token `('
/usr/local/bin/phpunit: line 5: ` * Copyright (c) 2001-2013, Sebastian Bergmann <sebastian@phpunit.de>.'

鞘翅目

/usr/local/zend/bin/phpcs: line 2: ?php: No such file or directory
/usr/local/zend/bin/phpcs: line 3: /Applications: is a directory
/usr/local/zend/bin/phpcs: line 4: LICENSE.html: command not found
/usr/local/zend/bin/phpcs: line 5: LICENSE.html: command not found
/usr/local/zend/bin/phpcs: line 6: LICENSE.html: command not found
/usr/local/zend/bin/phpcs: line 7: LICENSE.html: command not found
/usr/local/zend/bin/phpcs: line 8: LICENSE.html: command not found
/usr/local/zend/bin/phpcs: line 9: LICENSE.html: command not found
/usr/local/zend/bin/phpcs: line 10: LICENSE.html: command not found
/usr/local/zend/bin/phpcs: line 11: syntax error near unexpected token newline
/usr/local/zend/bin/phpcs: line 11: ` * @author    Greg Sherwood <gsherwood@squiz.net>'

如果我运行/usr/local/zend/bin/php/usr/local/bin/phpunit 或/usr/local/zend/bin/php/usr/local/bin/phpcs 它可以工作

其他细节:

$PATH-bash

:/opt/local/bin:/opt/local/sbin:/usr/local/zend/bin:/usr/bin:/bin:/usr/sbin:/usr/local/bin:/opt/X11/bin:/usr/local/zend/bin: 没有这样的文件或目录

看来你的命令行PHP已经移动了。

尝试which phpunit并在 vi 或类似文件中打开文件。在第一行中,它说它期望php在哪里。将这两个文件(phpunit 和 phpcs)中的第一行更改为

#!/usr/local/zend/bin php

或者您在引用的位置创建一个指向/usr/local/zend/bin/php 的符号链接

如果您需要这两个步骤中的任何一个的帮助,请告诉我。

我找到了解决方法,将顶行#!/usr/local/zend/bin/php替换为以下内容:

#!/usr/bin/env /usr/local/zend/bin/php