我在我的 PHP 代码中使用了很多函数,例如
UID(),user_getProfileImage() ... 等等
。在 Windows 上编写并工作很好。但当我把项目放到服务器上时,就会出现以下错误:Fatal error: Call to undefined function UID() in /var/www/vhosts/...
。
什么?这个函数没有定义?!
我检查了所有的项目文件并重新将所有文件 FTP 到服务器,但还是出现同样的错误。
但是当我将 UID()
的名称更改为 uid()
(在 lib.php 和其他使用它的地方都要改),就可以正常工作。
那么问题出在哪里呢?这个服务器出了什么问题吗?
本地 PHP 版本:5.3.10
服务器 PHP 信息:http://... 已删除
注:我使用 Notepad++ 将所有 PHP 文件编码为“UTF-8 without BOM”(一如既往),有趣的是,即使使用相同的函数并在同一服务器上运行,另一个项目也可以正常工作。
谢谢。
/##############################/
更新(和解决方法):
- 不要在任何函数名称中使用大写字母"I" 或者
- 简单地使用 setlocale,像这样:
setlocale(LC_TIME, "tr_TR.UTF-8")
// 我只需要本地时间设置并使用了这个 如果你需要使用
LC_ALL
,不要忘记将LC_CTYPE
设置回en_US
,例如:setlocale(LC_ALL, "tr_TR.UTF-8"); setlocale(LC_CTYPE, "en_US");