我有使用由Piwik API提供的阵列,在PHP格式麻烦的,因为它的代码在这里输出:转换一个多维阵列,和/或转换为stdClass的对象
array (
0 =>
array (
'idsite' => '2',
'name' => 'coolrob335.com',
'main_url' => 'http://coolrob335.com',
'ts_created' => '2012-06-02 21:05:56',
'ecommerce' => '0',
'timezone' => 'Europe/London',
'currency' => 'GBP',
'excluded_ips' => '',
'excluded_parameters' => '',
'group' => '',
'feedburnerName' => NULL,
),
1 =>
array (
'idsite' => '3',
'name' => 'robbrazier.com',
'main_url' => 'http://robbrazier.com',
'ts_created' => '2012-06-04 14:17:28',
'ecommerce' => '0',
'timezone' => 'Europe/London',
'currency' => 'GBP',
'excluded_ips' => '',
'excluded_parameters' => '',
'group' => '',
'feedburnerName' => NULL,
),
)
我什么想知道的是:有没有办法直接操纵这个数组,因为使用$ obj [0] ['idsite'],$ obj [0] - > idsite不工作(我知道后者不起作用,因为它不是一个stdClass对象)。
因此,有一种方法,在上述链接中所示的数组转换从
array (
0 =>
array (
'idsite' => '2',
为类似
array (
0 =>
array (
['idsite'] => '2',
或将其转换为stdClass的对象,因此,它可以是操纵? (我已搜查SO和谷歌的一个多维数组转换成stdClass的对象,并没有任何的解决方案在这种情况下工作可能由于他们不是作为[] => ''
在一个旁注: 我所试图做的从这个是得到“idsite”和“名”,将其转换为与“名称”作为链接的标题列表,以便例如,它会是
$url = "{$user_data['piwik_server']}/index.php?module=API&method=API.get&idSite={$obj->id}&format=PHP&prettyDisplay=1&serialize=0&token_auth={$user_data['apikey']}"
<a href="<?php $url; ?>"><?php $obj->name; ?></a>
(我知道,这将极有可能在foreach/while循环中有效工作)
感谢您的快速回复:) 不幸的是,这似乎并没有在这种情况下工作,它显示了这一点:http://beta.piwilytics.com/multidimensionalarray.php。 我有一种感觉,这是因为数组格式不正确? – 2012-07-22 19:40:22
不幸的是,有些类型的变量不能使用'(object)'进行转换,例如资源或数据库连接句柄 – 2012-07-22 19:46:21