php二維數組拆分
① php多維數組問題,,高分求高手幫幫,,
1、二維轉一維:
function fixArray($r,$k)
{
$out = array();
foreach ($r as $key=>$val) {
if (is_array($val)){
$out = array_merge($out, fixArray($val,$key));
} else{
$out["'$key'"] = $val;//$val;
}
}
return $out;
}
$arr =array(
'2'=>array('5'=>'ok','6'=>'good'),
'3'=>array('7'=>'yes','8'=>'cool'),
'4'=>array('9'=>'look')
);
$output = fixArray($arr,"");
print_r($output);
2、你說的帶主鍵名3,基本上不可能實現,因為如果鍵名相同,則值會互相覆蓋,或者還是需要用2維數組。
② php 中如何給二維數組賦值
PHP給二位數組賦值的方式是非常靈活的,這里介紹三種方法(設二位數組$arr = array(array(1,2,3),array(4,5,6));):
在已知二維數組元素個數的情況下,可以直接根據下標來賦值:
$arr[2]=array(7,8,9);//給二維數組的第一維賦值。
$arr[3][0]=10;//給二維數組的第二維元素賦值。
2.在未知二維數組具體元素的情況下,可以使用array_push()函數來賦值:
array_push($arr,array(11,12,13));
3.同樣,在未知二維數組元素的情況下,還可以利用count函數來賦值:
$arr[count($arr)]=array(14,15,16);
③ php 怎麼把一個二維數組轉換為一個一維數組
foreach($arras$k=>$v){
$id_new[]=$id;
$name_new[]=$name;
}
//新數組
//Array(
//[0]=>1
//[$id_new]=>$name_new懂沒?
//)
④ PHP根據二維數組元素數量拆分成若干個小數組
php數組分組可以使用函數array_chunk,按照給定的規則進行遍歷,如果數組的num值大於8,就整除8,獲取整除的數據,然後按照整除數進行分組分塊即可。
⑤ php將字元串拆分成二維數組
<?php
$str="1235
4565
1596";
functionstrsToArray($strs,$x){//把字元串按指定正則切割為數組
$result=array();
$array=array();
//把與正則匹配的字元串替換為@
$strs=preg_replace($x,'@',trim($strs));
/*這里切割字元串,需要注意的是如果字元串中有@
可以把上下兩行這個@改為其他字元串中沒有的符號*/
$array=explode('@',trim($strs));
foreach($arrayas$key=>$value){
$result[]=$value;
}
return$result;
}
$test=strsToArray($str,'/ /');//以換行符切割字元串為數組
foreach($testas$key=>$value){//遍歷數組,再以空格切割字元串為數組
$testb[]=strsToArray($value,'/s/');
}
echovar_mp($testb);
?>
希望對你有所幫助
⑥ PHP怎麼分割字元串 輸出二維數組
巧妙運用explode()這個方法即可,根據你的需求寫了段代碼
$result=array();
$str='111,aaa|222,bbb|333,ccc';
//第一次分割字元串
$arr1=explode('|',$str);
foreach($arr1as$key=>$value){
//第二次分割字元串
$arr2=explode(',',$value);
$result[$key]['id']=$arr2[0];
$result[$key]['name']=$arr2[1];
}
var_mp($result);
數組列印效果如下圖
希望能幫助到你,注意採納