以下将 $scpar 切片为两种类型,一种包含前 9 个,第二种包含从 10 到 18 的前逗号分隔值。
$scpar9 = array_slice($scpar,0,9);
$scpar18 = array_slice($scpar,9,18);
然后,我们使用 foreach 并使用 id 参数 $sid
从其他字段获取相同的逗号分隔值。
foreach ($scpar9 as $sid => $scpar) {
然后像这样从其他字段获取信息。
<b>'.$scpar.'</b> '.$sccomp[$sid].$scmen[$sid].
一切正常,问题出在第二个 9 个字段。
foreach ($scpar18 as $sid => $scpar) {
<b>'.$scpar.'</b> '.$sccomp[$sid].$scmen[$sid].
字段$scpar
是正确的,但包含[$sid]
的字段是从第一个结果开始,而不是从第9个结果开始。
有什么想法吗?
太棒了
最佳答案
您需要使用preserve_keys
preserve_keys : Note that array_slice() will reorder and reset the array indices by default. You can change this behaviour by setting preserve_keys to TRUE.
$scpar18 = array_slice($scpar,9,18, true);
关于PHP数组切片多个数组不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6733490/