我有数据库与几个表,都有一个具有相同名称的列。我想以这种方式从这个列中获取数据,所以当它从特定的表(“国家”)获取时,它有字符串附加,否则数据就会被简单地获取。 这里是我的方法选择语句中的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很陌生,很高兴知道这个表达式有什么问题,我该如何解决它。
您是否尝试过与反引号替换大括号? –
不幸的是,他们没有太大的区别 –