我需要帮助解决困扰我好几天的问题。这可能是一个明显的答案,可能已经得到了回答。作为先决条件,我做了很多谷歌搜索和堆栈爬行,无济于事。说实话,我不确定问题是什么。非常感谢任何帮助,并希望在我的特殊情况下拯救他人一些过早的秃头。所以没有进一步的Ado,这里是代码:
class Database {
private function host() {
return 'localhost:3306';
}
private function user() { // line 8 is here
return "root";
}
private function password() {
return "";
}
private function dbname() {
return "stonelabs";
}
private $dbh;
private $error;
public function __construct() {
$dsn = 'mysql:host=' . $this->host() . ';dbname=' . $this->dbname();
$options = array(
PDO::ATTR_PERSISTENT => true,
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
);
try{
$this->dbh = new PDO($dsn, $this->user(), $this->password(), $options);
return true;
}
catch(PDOException $e){
$this->error = $e->getMessage();
return false;
}
}
}
这是我收到的错误:
解析错误:语法错误,意外的'私有'(T_STRING),期待函数(T_FUNCTION)/ storage / emulated / 0 / var / www / Stone Info Labs / test / core / core / helpers / db.php on第8行
我正在尝试制作一个简单的PDO数据库类,以前做了很多次,根本就行不通。索引文件中只需要这个类文件(只有4行,打开php括号,3行需要行,所有这些都在这个阶段工作)。我正在Android 6.0.1上开发和运行,使用服务器终极专家提供的lighttpd服务器,所有这些服务器一直有效,包括以前的网站。
我使用的是php 5.5版
我将$ this-> pass()更改为$ this->密码(),但错误相同。上面的代码已更新
答案 0 :(得分:1)
找到的解决方案:@ num8er。信用转到他的答案,我只是张贴这个,所以答案可用,直到@ num8er可以发布答案。问题是隐藏在我的代码中的隐形字符,而num8er通过格式化程序运行代码来找到它们。
确保不会意外地在代码中输入或复制/粘贴不可见的字符,如果解析错误令人困惑,罪魁祸首可能是不可见的字符
答案 1 :(得分:0)
你有两个问题:
除了,它一切正常
我建议您查看此链接以获取一些有用的信息: