PHP mcrypt扩展加载失败求助:已按步骤操作仍报错
你遇到的报错:
PHP Warning: PHP Startup: Unable to load dynamic library 'php_mcrypt'(尝试路径:C:\xampp\php\ext\php_mcrypt...)
按以下步骤排查解决:
核对文件名与配置项
确保C:\xampp\php\ext里的mcrypt文件是php_mcrypt.dll(带.dll后缀),同时php.ini里的配置要写完整:extension=php_mcrypt.dll,不要省略.dll,这是最常见的失误。匹配PHP与mcrypt版本
下载的mcrypt必须和你的PHP版本(比如5.6/7.2)、位数(32/64位)、线程安全(TS/NTS)完全对应。打开phpinfo()查看这些参数,再找匹配的mcrypt文件。补全系统依赖库
mcrypt需要libmcrypt.dll这类依赖文件,把它放到C:\xampp\php目录,或者Windows的System32(64位系统还要放SysWOW64)目录,否则加载时会因为找不到依赖失败。确认修改的是正确的php.ini
XAMPP存在多个php.ini文件:Apache用的是C:\xampp\apache\bin\php.ini,命令行PHP用的是C:\xampp\php\php.ini。执行php --ini可以看命令行加载的配置文件路径,Apache的话看phpinfo()里的「Loaded Configuration File」项,确保你改的是对应环境的那个。重启后再验证
修改配置后必须完全重启Apache服务,命令行验证要重新打开CMD窗口,再执行php -m查看模块列表。
内容的提问来源于stack exchange,提问作者GBU

