我在PHP数组
中设置起点很困难PHP代码
for($k=0; $k<count($AddClmn); $k++){
$ord = 0;
foreach($AddClmn[$k] as $ky=>$vl){
$clmns[] = array('head'=>$ky, 'src'=>$vl, 'typ'=>'datatyp', 'NEMERIC'=>'', 'wdth'=>'70', 'ord'=>$ord);
$ord++;
}
}
file_put_contents('Tracing.txt', print_r($clmns, true));
我的实际输出高于PHP代码
Array
(
[0] => Array
(
[head] => locid
[src] => 1
[typ] => datatyp
[NEMERIC] =>
[wdth] => 70
[ord] => 0
)
[1] => Array
(
[head] => hhs
[src] => 2525252
[typ] => datatyp
[NEMERIC] =>
[wdth] => 70
[ord] => 1
)
[2] => Array
(
[head] => LA0
[src] => 9831808.388559164
[typ] => datatyp
[NEMERIC] =>
[wdth] => 70
[ord] => 2
)
)
在上面的结果我想跳过前两个数组,我想要第3个数组作为索引0的开始。如何设置指针或任何方式来面对这种情况?我除了结果
[0] => Array
(
[head] => LA0
[src] => 9831808.388559164
[typ] => datatyp
[NEMERIC] =>
[wdth] => 70
[ord] => 2
)
[1] => Array
(
[head] => LA1
[src] => 12920638.804462105
[typ] => datatyp
[NEMERIC] =>
[wdth] => 70
[ord] => 3
)
如何解决这个问题?
答案 0 :(得分:1)
for($k=2; $k<count($AddClmn); $k++){
$ord = 0;
foreach($AddClmn[$k] as $ky=>$vl){
$clmns[] = array('head'=>$ky, 'src'=>$vl, 'typ'=>'datatyp', 'NEMERIC'=>'', 'wdth'=>'70', 'ord'=>$ord);
$ord++;
}
}
file_put_contents('Tracing.txt', print_r($clmns, true));
使用此代码..
答案 1 :(得分:1)
//你有一个这样的数组
$data = array(
'0' => 'Hello', //you want to skip this
'1' => 'Hello1', //you want to skip this
'2' => 'Hello2',
);
$skipped = array('0', '1');
foreach($data as $key => $value){
if(in_array($key, $skipped)){
continue;
}
//do your stuf
}
答案 2 :(得分:1)
我认为你需要这个 -
foreach($AddClmn[$k] as $ky=>$vl){
if(substr( $ky, 0, 2 ) === "LA") {
//your code
}
} // end for loop
答案 3 :(得分:1)
//以下几行将从前两个索引中删除值。
unset($array[0]);
unset($array[1]);
//这一行将重新设置索引(新数组将设置为&#39; 0&#39;索引)
$array = array_values($array);
//以下行将显示数组的新内容
print_r($array);
答案 4 :(得分:0)
使用 PHP&gt; = 5.3 使用此函数将数组展平(也就是删除一个“图层”)一级:
function flatten(array $array) {
$return = array();
array_walk_recursive($array, function($a) use (&$return) { $return[] = $a; });
return $return;
}