用破折号创建对象名称

时间:2015-06-13 01:45:20

标签: php object

我正在尝试运行mysqli查询来检索单个结果,但它要求我创建一个名称中包含短划线的对象,因此它不起作用。

$style_name = $db2->query("SELECT ModelDesc-ENU FROM tlkpModel WHERE ModelID = '$style' LIMIT 1")->fetch_object()->ModelDesc-ENU; 

注意部分fetch_object()->ModelDesc-ENU; - 这是一个无效的对象名称。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:3)

用大括号和引号包裹属性:

fetch_object()->{'ModelDesc-ENU'};

虽然我怀疑你也需要在列表中包装列名,因为短划线不是有效的标识符字符,实际上意味着你要从ModelDesc中减去ENU。

$style_name = $db2->query("SELECT `ModelDesc-ENU` FROM tlkpModel WHERE ModelID = '$style' LIMIT 1")->fetch_object()->{'ModelDesc-ENU'};