我有以下映射到 MySql 表的示例类(如下所示)。当我使用 PDO::FETCH_CLASS 并执行 *var_dump* 时,我发现映射将指向所有小写属性。即“shortName”映射到“shortname”,但应该是“shortName”(驼峰式大小写,如定义的属性);
为什么它映射到全部小写,我该怎么做才能将它们映射到来自 SELECT 的确切 sql 名称?
class Category {
public $id;
public $fkId;
public $shortName;
public $longName;
public static function getCategories() {
$db = ezcDbInstance::get();
$stmt = $db->prepare('SELECT
id,
fk_id AS `fkId`,
short_name AS `shortName`,
long_name As `longName`
FROM `Category`');
$stmt->execute();
return $stmt->fetchAll(PDO::FETCH_CLASS, "Category");
}
}
Run Code Online (Sandbox Code Playgroud)
改变这个:
$db = ezcDbInstance::get();
$stmt = $db->prepare('SELECT...
Run Code Online (Sandbox Code Playgroud)
对此:
$db = ezcDbInstance::get();
$db->setAttribute( PDO::ATTR_CASE, PDO::CASE_NATURAL );
$stmt = $db->prepare('SELECT ...
Run Code Online (Sandbox Code Playgroud)