我迁移到godaddy获得perma-host。现在我的大部分代码都无效。 多年来,我在游戏网站中使用了以下代码。但现在我想把它转移到一个更永久的东道主。我一直在使用php v5没有问题,从来没有理由改变。但是我最终迁移到了PDO。话虽如此,这里是我使用的.ini文件:(请记住,它是一个giagantic ini文件,但以下是重要的不工作..
SQL_TYPE=mysql
HOST=localhost
USER=incognito
PASS=topsecret
DATABASE=mycooldb
将其拉出来定义:
$defines = parse_ini_file('defines.ini');
foreach($defines as $field=>$data)
define($field, $data);
现在我使用godaddy时遇到错误(我认为是v7 php)。 如果我跑
die('host = '.HOST) // gives HOST
在我的本地服务器上
die('host = '.HOST) // gives localhost - as it should
为什么会这样?我想我可以逐行排列定义,但它们已经按照我的方式工作了多年。
感谢您的任何意见。
答案 0 :(得分:0)
由于看起来我有2个问题,我将回答解决此问题的第一个问题并将其关闭:
DEFINES没有问题,而是我的.ini文件存储了创建DEFINES的变量的信息。
在这个ini文件中,我最初有#34;#"对于当时被接受的评论,(这是我以前看到的:https://en.wikipedia.org/wiki/INI_file#Format) 但是,没有抓住一些"折旧错误"我从PHP v5.3开始多年 - 因为我顽固地改变了 - "#"是那些警告之一。当PHP 7终于来了,"#"不再作为评论工作,因此我的DEFINES变量停止工作,因为脚本停留在第一个注释行。
结论:就我的错误而言,PHP:v7和v5之间的定义没有区别,但使用"#"由于评论引起了错误。 感谢@Magnus Eriksson和@Calimero提示显示错误以获取它。