来自嵌套数组的PHP echo元素

时间:2015-10-08 10:36:35

标签: php arrays multidimensional-array printing

我有一个这样的数组:

Array ( [internalName] => novoleto1 
        [title] => Novo leto 
        [date] => Date Object ( 
                  [year] => 2015 
                  [month] => 01 
                  [day] => 01 
                  [hour] => 0 
                  [minute] => 0 
                  [second] => 0 
                  [partsecond] => 0 
                  [tz] => Date_TimeZone Object ( 
                          [id] => CEST 
                          [longname] => Central European Time 
                          [shortname] => CET 
                          [hasdst] => 1 
                          [dstlongname] => Central European Summer Time 
                          [dstshortname] => CEST 
                          [offset] => 3600000 
                          [default] => 
                        ) 
                  [getWeekdayAbbrnameLength] => 3 
                ) 
       )

如何单独打印所有元素?我不能只回显标题和内部名称,但如何打印日期对象的元素?

3 个答案:

答案 0 :(得分:0)

如果要输出整个数组及其结构以进行调试,则只需转储它:

var_dump($my_array);

如果要访问特定元素,请访问object属性:

echo $my_array['Novo leto']->year;

请注意$my_array['Novo leto']是一个对象,不是一个数组。

当然你也可以组合属性:

echo sprintf('%s-%s-%s', 
    $my_array['Novo leto']->year, 
    $my_array['Novo leto']->month, 
    $my_array['Novo leto']->day
); 

答案 1 :(得分:0)

您需要像对象一样使用此数组元素。

$year = $yourArray['date']->year;
echo $year;

答案 2 :(得分:0)

如果要单独打印它们,可以使用foreach循环:

<?php

foreach ($myArray as $value)
{
    if (is_array($value) || is_object($value))
        print_r($value); // You can also use var_dump
    else
        echo $value;
}