[英]Unexpected PHP Parse Error
我意識到這個問題的答案可能很明顯,但我很難過。
我創建了一個使用Jeremy Kendall的密碼驗證器( https://github.com/jeremykendall/password-validator )的類,名為Hash。 然而,當這個類被調用時,我得到:
Parse error: syntax error, unexpected '}' in /home/james/Projects/REC/htdocs/classes/Hash.class.php on line 24.
Hash.class.php中存在問題的代碼是:
private $validationCallback;
public function __construct(){
$this->validationCallback = function($credential, $passwordHash){
if (has('md5', $credential) === $passwordHash) {
return true;
}
return false;
}
}
第24行是最后的'}'。 任何幫助將不勝感激。
謝謝。
這應該是:
private $validationCallback;
public function __construct(){
$this->validationCallback = function($credential, $passwordHash)
{
if (has('md5', $credential) === $passwordHash) {
return true;
}
return false;
}; // Missing semicolon needs to be here
}
請參閱PHP的匿名函數文檔:
閉包也可以用作變量的值; PHP自動將這些表達式轉換為Closure內部類的實例。 為變量分配閉包使用與任何其他賦值相同的語法, 包括尾隨分號 :
匿名函數最后需要一個分號。 嘗試這個:
private $validationCallback;
public function __construct(){
$this->validationCallback = function($credential, $passwordHash)
{
if (has('md5', $credential) === $passwordHash) {
return true;
}
return false;
};
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.