swoole 报错 undefined symbol: zend_empty_string in Unknown on line 0 PHP Fatal error: Uncaught Error:

  • Post author:
  • Post category:php


之前在为了学习swoole,自己的服务器源码安装了php7.0和swoole,当时自己测试后,swoole的服务能使用。

一个月后的今天,因为项目中使用到了即使通讯,所以打算重新学习swoole

在执行下面代码时出错:

root@xxxxxx:/usr/local/nginx/html/swoole/server# php tcp.php 

报错信息如下:

PHP Warning:  PHP Startup: Unable to load dynamic library 
'/usr/lib/php/20151012/swoole.so' - /usr/lib/php/20151012/swoole.so: 
undefined symbol: zend_empty_string in Unknown on line 0
PHP Fatal error:  Uncaught Error: Class 'swoole_server' not found in /usr/local/nginx/html/swoole/server/tcp.php:9
Stack trace:
#0 {main}
  thrown in /usr/local/nginx/html/swoole/server/tcp.php on line 9

???一脸懵逼

undefined symbol: zend_empty_string in Unknown on line 0

PHP Fatal error:  Uncaught Error: Class ‘swoole_server’ not found

行,看不懂,果断谷歌之,看到韩天峰大大的回复

好吧,听大大的,重新编译swoole过。php.ini加入swoole.so

php  tcp.php   再执行一次。

why??还是一样的报错,一个字母都没有错    得, 继续谷歌之


https://www.cnblogs.com/pyspang/p/7922617.html

在使用php -m 的命令时和博主遇到的问题一致.

那行 直接使用绝定路径的php重启脚本

成了,没什么问题。php启动服务脚本时,使用绝定位置.

这是什么bug???

看了看之前php编译时的操作,是将php 添加到了环境变量当中.    于是去环境变量的文件中取找,并没有把php

所在的目录加入到环境变量当中。b了狗啦,进行排查。在环境变量的一个目录中存在php 而这个php启动的是另一个PHP

之前是使用pecl安装php的,没有卸载干净。导致php 命令使用的是之前的php。



版权声明:本文为qq_37126235原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。