You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP随机密码生成器报错求助:Call to undefined function split()

解决PHP随机密码生成器中split()函数未定义的错误

嘿,这个问题其实挺常见的——你碰到的致命错误,核心原因是split()函数在PHP 7及更高版本里已经被彻底移除了。它属于PHP早期的字符串处理函数,早就被官方弃用并从语言中删除,所以在新版本的PHP环境里调用它,必然会触发“未定义函数”的报错。

解决方法特别简单,直接把代码里的split()替换成explode()就行。因为你这里是用逗号来拆分字符集参数(比如'lower_case,upper_case,numbers'这种格式),explode()是专门用来按固定分隔符拆分字符串的工具,完全能满足需求,而且性能比旧的split()还要好。

给你举个具体的修改例子,假设你第26行的原代码是:

$charSets = split(',', $availableChars);

把它改成:

$charSets = explode(',', $availableChars);

如果之后你遇到需要按正则表达式拆分字符串的场景(比如处理多个不同分隔符),可以用preg_split(),比如:

$charSets = preg_split('/,/', $availableChars);

不过针对你当前的需求,explode()就足够用了。

另外多提一句,如果你的代码里还有其他类似的旧版PHP函数(比如ereg()、ereg_replace()这类),最好也一并替换成对应的新版函数(比如preg_match()、preg_replace()),避免后续再遇到类似的兼容性问题。

内容的提问来源于stack exchange,提问作者Saurabh MeanMachine

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 04:18:01