我有數據庫與幾個表,都有一個具有相同名稱的列。我想以這種方式從這個列中獲取數據,所以當它從特定的表(「國家」)獲取時,它有字符串附加,否則數據就會被簡單地獲取。 這裏是我的方法選擇語句中的PHP/MySql if-operator
public function getInfo($table, $id) {
$operate = $this->pdo->prepare("select if({$table}=='countries', 'concat('capital', city)', 'city') city from {$table} where id= {$id}");
$operate->execute();
return $operate->fetchObject();
}
我有一個類中的幾個方法,一切工作正常。這一個也沒有if語句的工作,問題似乎與這個表達式:{$ table} =='國家'。但是,我找不到我的錯誤在哪裏。我對PHP很陌生,很高興知道這個表達式有什麼問題,我該如何解決它。
您是否嘗試過與反引號替換大括號? –
不幸的是,他們沒有太大的區別 –