我正在尝试测试一个涉及安装在PHP 5.5扩展目录中的模块的类,特别是Couchbase(运行正常,我在同一台机器上正好开发它)。但是当php单元尝试运行测试时给出了一个错误,说找不到类Couchbase,这当然是在php sdk中定义的。我在MacOSX 10.7.3上。
当我在我的终端中运行时
tomas:~ tomasruiz$ php -v
PHP 5.5.8 (cli) (built: Jan 12 2014 19:34:38)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2013 Zend Technologies
with Zend OPcache v7.0.3-dev, Copyright (c) 1999-2013, by Zend Technologies
with Xdebug v2.2.3, Copyright (c) 2002-2013, by Derick Rethans
tomas:~ tomasruiz$ which php
/usr/local/php5/bin/php
我在Sublime Text 2中创建了一个插件,以查看在sublime Text
中使用的php版本import sublime, sublime_plugin
import subprocess
import os
class ExampleCommand(sublime_plugin.TextCommand):
def run(self, edit):
self.view.window().run_command('exec', {'cmd': ["php", "-v"]})
这就是它返回的......
PHP 5.3.6 with Suhosin-Patch (cli) (built: Sep 8 2011 19:34:00)
Copyright (c) 1997-2011 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2011 Zend Technologies
with Xdebug v2.1.2, Copyright (c) 2002-2011, by Derick Rethans
和上面的相同,但是“哪个php”..
/usr/bin/php
有人知道如何配置吗?或者我在这里做错了什么?
提前致谢。
TR
答案 0 :(得分:4)
我认为你的意思是你通过ST构建系统运行php单元?如果是这样的话,那就是我设法解决类似的问题
解决方案1:符号链接
mv /usr/bin/php /usr/bin/php53
ln -s /usr/local/php5/bin/php /usr/bin/php
解决方案2:编辑或创建PHP的第二个构建系统
{ “cmd”: [“/usr/local/php5/bin/php”, “$file”], “file_regex”: “php$”, “selector”: “source.php” }
您遇到的问题很可能是因为ST运行PHP的用户未设置为使用/usr/local/php5/bin/php
可执行文件,而是使用旧版PHP 5.3构建的OS X /usr/bin/
是系统尝试查找可执行文件的下一个位置,如果在本地bin目录中找不到它。
我建议使用解决方案1,确保系统上的所有内容都使用正确的PHP版本。