我尝试使用PDO连接到数据库并从.txt获取数据。
我通过这段代码得到了数据,这给了我一个包含.txt信息的数组:
$servidor=file('servidor.txt');
$dbname=$servidor['0'];
$serv=$servidor['1'];
$user=$servidor['2'];
$pass=$servidor['3'];
if($pass = "''"){
$pass="";
}
然后,当我尝试时,它给了我一个致命的错误。
连接代码:
$conexao = new PDO('mysql:host='.$serv.';dbname='.$dbname.'',$user,$pass);
有谁知道为什么会这样?如果我将数组中的值交换为相同的值但作为字符串,它可以完美地工作。
According to the manual,file()
将返回一个数组,但每一行仍将包含换行符(\n
)。这意味着您目前正在使用用户名"root\n"
连接,而不是(您所期待的)"root"
。
要么自己删除换行符,要么传递旗帜FILE_IGNORE_NEW_LINES
:
$servidor=file('servidor.txt', FILE_IGNORE_NEW_LINES);