我很难访问我的PHP数组中的特定项目,这个项目就是这样创建的array('expected' => array('form', 'title'))
.Array
(
[expected] => Array
(
[0] => form
[1] => title
)
)
我想访问第一个数组的标题( expect )以及此数组中元素的值(表单和 title < / em>的)
我尝试了array_values()
或key
等方法,但我从未得到正确的结果。
修改 感谢Aamir,这个问题就解决了。 实际上,这是因为我将数组作为参数传递给方法,默认情况下我将其设置为null。是的,我知道,愚蠢的东西。
答案 0 :(得分:2)
问题很模糊,可以通过以下方式回答:使用RecursiveTreeIterator
<?php
$x = array(
'level1' => array(
'item1.1',
'level2'=>array(
'item2.1',
'item2.2',
'level3'=>array(
'item3.1'
)
),
'item1.2'
)
);
$it = new RecursiveTreeIterator( new RecursiveArrayIterator($x), RecursiveIteratorIterator::SELF_FIRST );
foreach($it as $line) {
echo $line, PHP_EOL;
}
打印
\-Array
|-item1.1
|-Array
| |-item2.1
| |-item2.2
| \-Array
| \-item3.1
\-item1.2
您可能想要优化您的问题....
答案 1 :(得分:1)
foreach($array as $key => $value){
echo $key; //expected
echo $value[0]; //form
echo $value[1]; //title
//OR if you have more values then
foreach ($value as $key1 => value1){
echo $value1; //form in 1st iteration and title in 2nd iteration
}}
答案 2 :(得分:0)
试试这个:
$array = array('expected' => array
(
0 => 'form',
1 => 'title',
)
);
$expected= $array['expected'];
$form = $expected[0];
$title = $expected[1];
答案 3 :(得分:0)
使用以下代码: -
$my_array = Array
(
'expected' => Array
(
'0' => 'form',
'1' => 'title'
)
);
echo $form = $my_array[key($my_array)][0]; // print form
echo $title = $my_array[key($my_array)][1]; //print title
希望它会对你有所帮助:)。
答案 4 :(得分:0)
试试这个:
<?php
$array = array('expected' => array('form', 'title'));
function testFunc($array)
{
foreach ($array as $key=>$value) {
if(is_string($key))
{
echo $key."<br>";
}
if(is_string($value))
{
echo $value."<br>";
}
if(is_array($value))
{
testFunc($value);
}
}
}
testFunc($array);
?>
输出:
expected
form
title