npr*_*eet 4 php macos homebrew xdebug pecl
我使用 Homebrew 安装了 PHP brew install php。
php -v给我:
PHP 8.0.9 (cli) (built: Jul 29 2021 17:21:21) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.0.9, Copyright (c) Zend Technologies
with Zend OPcache v8.0.9, Copyright (c), by Zend Technologies
Run Code Online (Sandbox Code Playgroud)
这样 PHP 就安装成功了,并且也作为一个服务运行在brew services start php.
要安装 xdebug,我使用的命令pecl install xdebug似乎工作正常,但最后我收到消息:
Build process completed successfully
Installing '/usr/local/Cellar/php/8.0.9/pecl/20200930/xdebug.so'
Warning: mkdir(): File exists in System.php on line 294
PHP Warning: mkdir(): File exists in /usr/local/Cellar/php/8.0.9/share/php/pear/System.php on line 294
Warning: mkdir(): File exists in /usr/local/Cellar/php/8.0.9/share/php/pear/System.php on line 294
ERROR: failed to mkdir /usr/local/Cellar/php/8.0.9/pecl/20200930
Run Code Online (Sandbox Code Playgroud)
安装文档 xdebug.org 中的安装指令没有帮助。我尝试在 php 目录中创建一个目录 99-xdebug.ini (不是由 install 命令创建的),并编辑 php.ini 文件以添加 zend_extension=xdebug。但是重启Web服务器和php服务后这不起作用,用xdebug(php -v)仍然没有显示php。
我使用的是 Macbook 13 2017,没有 Touch Bar 和 Big Sur。
编辑:我从导演中删除了 pecl,现在安装工作正常。但是现在我在使用的时候遇到了以下问题php-v
PHP Warning: Failed loading Zend extension 'xdebug' (tried: /usr/local/lib/php/pecl/20200930/xdebug (dlopen(/usr/local/lib/php/pecl/20200930/xdebug, 9): image not found), /usr/local/lib/php/pecl/20200930/xdebug.so (dlopen(/usr/local/lib/php/pecl/20200930/xdebug.so, 9): image not found)) in Unknown on line 0
Warning: Failed loading Zend extension 'xdebug' (tried: /usr/local/lib/php/pecl/20200930/xdebug (dlopen(/usr/local/lib/php/pecl/20200930/xdebug, 9): image not found), /usr/local/lib/php/pecl/20200930/xdebug.so (dlopen(/usr/local/lib/php/pecl/20200930/xdebug.so, 9): image not found)) in Unknown on line 0
PHP 8.0.9 (cli) (built: Jul 29 2021 17:21:21) ( NTS )
Copyright (c) The PHP Group
Zend Engine v4.0.9, Copyright (c) Zend Technologies
with Zend OPcache v8.0.9, Copyright (c), by Zend Technologies
Run Code Online (Sandbox Code Playgroud)
我收到类似的错误“错误:无法 mkdir /usr/local/Cellar/php/8.0.9/pecl/20200930”。
对我来说,目录是一个链接:
lrwxr-xr-x 1 rsimmons admin 23 Jul 26 11:53 /usr/local/Cellar/php@8.0/8.0.21/pecl -> /usr/local/lib/php/pecl
Run Code Online (Sandbox Code Playgroud)
然而,/usr/local/lib/php/pecl它不存在 - 所以我创建了它:
$ mkdir /usr/local/lib/php/pecl
并重新运行pecl install xdebug
安装成功了。