Php 如何从数组中提取数组取决于值
我的数组是Php 如何从数组中提取数组取决于值,php,arrays,function,sorting,arraylist,Php,Arrays,Function,Sorting,Arraylist,我的数组是 Array ( [Company] => Company [Model] =>Model [galleryID] => div [gallery] => Gallery #1 [networking] => div [Type] =>Type [dualim] => DualIM [era] => div [mera] => Maera [me
Array
(
[Company] => Company
[Model] =>Model
[galleryID] => div
[gallery] => Gallery #1
[networking] => div
[Type] =>Type
[dualim] => DualIM
[era] => div
[mera] => Maera
[meraos] => Meraeos
[aper] => Aper
)
当value为div时,如何将其拆分为多个数组关闭数组并生成一个新数组
$Company = Array
(
[Company] => Company
[Model] =>Model
);
$gallery = array(
[galleryID] => div,
[gallery] => Gallery #1
);
$networking = array(
[networking] => div,
[Type] =>Type,
[dualim] => DualIM
);
$era = array(
[era] => div,
[mera] => Maera,
[meraos] => Meraeos,
[aper] => Aper,
);
我尝试使用array_slice和许多代码,但没有按照我的意愿进行提取
我该怎么做 可以通过循环拆分数组,并将值放入其他数组中,如下所示:
$split = [];
$i = 0;
foreach($arr as $k => $v) {
if ($v == 'div') {
$i++;
}
$split[$i][$k] = $v;
}
print_r($split);
$currentVar = '';
$i = 0;
foreach($arr as $k => $v) {
if(!$currentVar) {
$currentVar = $k;
$$currentVar = [];
}
if ($v == 'div') {
$currentVar = $k;
}
$$currentVar[$k] = $v;
}
var_dump($Company, $galleryID, $networking, $era);
结果是一个数组。至于变量名,我找不到任何逻辑依据
只是为了好玩,但作为生产代码没有意义,我写这篇文章是为了更好地符合您的问题,但正如我所说的,使用这样的东西没有意义:
$split = [];
$i = 0;
foreach($arr as $k => $v) {
if ($v == 'div') {
$i++;
}
$split[$i][$k] = $v;
}
print_r($split);
$currentVar = '';
$i = 0;
foreach($arr as $k => $v) {
if(!$currentVar) {
$currentVar = $k;
$$currentVar = [];
}
if ($v == 'div') {
$currentVar = $k;
}
$$currentVar[$k] = $v;
}
var_dump($Company, $galleryID, $networking, $era);
当每个新值=div出现时,这段代码将创建一个带有数组键的变量。变量名背后的逻辑是什么?Felippe感谢您的回答,但我不能在多维数组上使用此技巧。您能看一下这里吗