帮助理解php函数 - $ array []的含义;那个部分

时间:2010-09-17 10:37:23

标签: php arrays json autocomplete

private function jsonArray($object)
{
  $json = array();

   if(isset($object) && !empty($object))
   {
      foreach($object as $obj)
      {
        $json[]["name"] = $obj;
      }
   }

   return $json;
}

我们正在抓取一个对象,如果满足条件,我们将迭代该对象。 然后......我在这个阅读中迷失了......:s

这里[]的含义是什么?

$json[]["name"] = $obj;

提前致谢, MEM

4 个答案:

答案 0 :(得分:4)

$json[]在数组的末尾添加一个元素(数字索引)。它与拥有以下代码相同:

$array=array();
$i=0;
foreach($something as $somethingElse)
{
    $array[]=$somethingElse;
    //is equivalent, in some way, to
    $array[$i++]=$somethingElse;
}

答案 1 :(得分:2)

这相当于:

$json[] = array('name' => $obj);

答案 2 :(得分:2)

它将$obj的内容添加到$json中的新字段以及字段"name"中的新字段。

小例子:

$arr = array();
$arr[] = "Hello";
$arr[] = "World!";

然后,$arr将包含:

Array (
 0 => "Hello",
 1 => "World!"
)

或者,如您在示例中的字段中的另一个数组:

$arr = array();
$arr[]["text"] = "Hello";
$arr[]["text"] = "World!";

变为

Array (
 0 => Array (
  "text" => "Hello"
 ),
 1 => Array (
  "text" => "World!"
 )
)

答案 3 :(得分:2)

$ json []会自动在数组末尾创建一个新元素 - 这是一个例子:

$json[]["name"] = "object1";
$json[]["name"] = "object2";
$json[]["name"] = "object3";
$json[]["name"] = "object4";

以下是它显示的内容:

Array
(
    [0] => Array
        (
            [name] => object1
        )

    [1] => Array
        (
            [name] => object2
        )

    [2] => Array
        (
            [name] => object3
        )

    [3] => Array
        (
            [name] => object4
        )

)