1、错因分析
我直接在Github下载的zip压缩文件,然后把压缩文件unzip到linux系统目录,然后进入PHP-Parser-4.x/bin目录下,使用./php-parse "<?php echo 123;",结果就报错Fatal error: Class 'PhpParser\Lexer\Emulative' not found。
应该使用composer工具的。如果使用宝塔安装PHP,那么很可能就已经安装composer了。 直接输入命令composer就可以看自己安装没有。
2、重要参考
运行PHP-Parser报错:PHP Fatal error: Uncaught Error: Class ‘PhpParser\ParserFactory‘ not found
composer require nikic/php-parser cd ./vendor/nikic/php-parser/ #使用./是因为在哪个目录下使用了composer命令,那么就在哪个目录生成文件
安装过程出现报错:
1、putenv() has been disabled for security reasons
2、proc_open函数被禁用
解决办法:1、先用php -v查看自己当前的php版本 2、再用宝塔面板放开那些被禁用的函数。参考:由于安全原因,putenv()已被禁用 putenv() has been disabled for security reasons
运行成功截图:

3、感悟
1、第一天遇到Bug困难时不要放弃;第二天面对Bug困难时,记录下脑袋中闪过的突破思路,然后逐个尝试。
2、写这种文章,即时写才爽。另外少写点,争取10~20min之内搞定。
文章讲述了在Linux环境中通过Github下载PHP-ParserZIP文件并解压后,尝试运行遇到的PhpParserLexerEmulative类未找到的致命错误。作者指出应使用Composer进行正确安装,并提供了遇到putenv()和proc_open()函数被禁用的安全问题时的解决方法,包括检查PHP版本和在宝塔面板中启用相关函数。此外,作者分享了面对和解决Bug的经验感悟。
3489

被折叠的 条评论
为什么被折叠?



