Php 帮助访问此多维数组
我有这个数组Php 帮助访问此多维数组,php,multidimensional-array,Php,Multidimensional Array,我有这个数组 Array ( [disc-art] => Array ( [original] => upload/c/4/c4eea45ce0f5e8d5698f5ff2d18b4566.jpg [preview] => Array ( [dvd-disc] => upload/c/4/d_disc_c4eea45ce0
Array
(
[disc-art] => Array
(
[original] => upload/c/4/c4eea45ce0f5e8d5698f5ff2d18b4566.jpg
[preview] => Array
(
[dvd-disc] => upload/c/4/d_disc_c4eea45ce0f5e8d5698f5ff2d18b4566.jpg
)
)
[cover-art] => Array
(
[original] => upload/7/2/72bb5a03708c99c822a792c76c00e8d1.jpg
[preview] => Array
(
[dvd-cover] => upload/7/2/d_cover_72bb5a03708c99c822a792c76c00e8d1.jpg
[dvd-spine] => upload/7/2/d_spine_72bb5a03708c99c822a792c76c00e8d1.jpg
[dvd-back] => upload/7/2/d_back_72bb5a03708c99c822a792c76c00e8d1.jpg
)
)
[insert-art] => Array
(
[original] => upload/b/1/b1f8e49d77121c01011acaa90cabc8ee.jpg
[preview] => Array
(
[dvd-insert] => upload/b/1/d_insert_b1f8e49d77121c01011acaa90cabc8ee.jpg
)
)
[boxshot] => Array
(
[preview] => Array
(
[boxshot] => upload/7/2/d_boxshot_72bb5a03708c99c822a792c76c00e8d1.jpg
)
)
)
我想返回一个数组,该数组访问每个预览
,并获取内容
array('dvd-disc' => '...path...', 'dvd-cover' => '...path...', etc...)
请帮帮我,这是漫长的一天,我想回家!:)
编辑:
更正-我希望我的最终数组如下所示
array(
'dvd-disc' => '<img src="'.$path.'" alt="'.$type.'" />',
'dvd-cover' => '<img src="'.$path.'" alt="'.$type.'" />',
etc...
);
数组(
“dvd光盘”=>“”,
“dvd封面”=>“”,
等
);
其中,$path
是每个预览的
子值的值,$type是每个预览的
子键的值$new_array=array();
$new_array = array();
foreach($main_array as $sub_array)
{
if(isset($sub_array['preview']))
{
foreach($sub_array['preview'] as $type => $image_url)
{
$new_array[$type] = '<img src="'.$image_url.'" alt="'.$type.'" />';
}
}
}
foreach($main_数组作为$sub_数组)
{
if(isset($sub_数组['preview']))
{
foreach($sub_数组['preview']作为$type=>$image\u url)
{
$new_数组[$type]='';
}
}
}
$new_array=array();
foreach($main_数组作为$sub_数组)
{
if(isset($sub_数组['preview']))
{
foreach($sub_数组['preview']作为$type=>$image\u url)
{
$new_数组[$type]='';
}
}
}
//(您引入的数组是$mainArray)
//我们将要创建的新阵列
$PreviewPath=array()
foreach($main数组作为$item){
foreach($item['preview']作为$previewName=>$previewPath){
$PreviewPath[$previewName]='',;
}
}
//(您引入的数组是$mainArray)
//我们将要创建的新阵列
$PreviewPath=array()
foreach($main数组作为$item){
foreach($item['preview']作为$previewName=>$previewPath){
$PreviewPath[$previewName]='',;
}
}
“我想回家!”:您仍然可以发布您尝试过的内容,或者您的特定问题是什么;)你不知道如何访问元素吗?或者如何组合它们?@Felix Kling抱歉,我试图用foreach循环和array_push
来解决这个问题,但毫无效果,但我似乎无法解决这个问题。你想要$type做什么?“我想回家!”:你仍然可以发布你已经尝试过的内容,或者你的具体问题是什么;)你不知道如何访问元素吗?或者如何组合它们?@Felix Kling抱歉,我试图用foreach循环和数组推送
来解决这个问题,但没有成功,但我似乎无法解决这个问题。你在寻找$type的什么?Tim-你回答了我最初的问题,但我的大脑已经崩溃,而这实际上不是我想要的。我应该问一个新问题,还是你可以在这里编辑你的问题?@Dave:现在应该可以了。Tim-你回答了我原来的问题,但我的大脑已经崩溃了,而这实际上不是我想要的。我应该问一个新问题,还是你可以在这里编辑你的问题?@Dave:现在应该可以了。
// (the array you are bring in is $mainArray)
// New array we'll be creating
$previewPaths = array()
foreach ($mainArray as $item) {
foreach ($item['preview'] as $previewName => $previewPath) {
$previewPaths[$previewName] = '<img src="'.$previewPath.'" alt="'.$previewName.'" />',;
}
}