【问题标题】:Accessing an object variable with # and space in its name in an array访问数组中名称中带有 # 和空格的对象变量
【发布时间】:2014-05-31 08:26:08
【问题描述】:

$this->groups 数组打印出以下内容:

Array
(
    [# Chapters] => stdClass Object
        (
            [editable] => 
            [id] => 6
            [title] => Sigma Kappa

我试图直接捕获 [title] 变量,而不是遍历数组。 问题在于#Chapters 对象的名称。 有没有可能?

【问题讨论】:

  • 为什么# 和空格会有所不同?使用$array['key']访问关联数组元素,key可以是任意字符串。
  • 是的,对...我很难想清楚以正确编写代码。

标签: php arrays stdclass


【解决方案1】:

由于它是一个数组,您可以通过它的键直接访问它。第一级(即父级)是一个数组,所以通过['the_key'] 访问它,然后第二级是一个对象,所以使用->property/attribute 考虑这个例子:

echo $this->groups['# Chapters']->title;

【讨论】:

    【解决方案2】:

    如果这是您找到的唯一搜索结果,如果它不是数组,以下是您如何执行此操作。

    $objectName->{'User Name'}
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-15
      • 2018-08-18
      相关资源
      最近更新 更多