Rumah > pembangunan bahagian belakang > masalah PHP > php递归无限极分类速度慢怎么办

php递归无限极分类速度慢怎么办

王林
Lepaskan: 2023-02-26 19:12:01
asal
3386 orang telah melayarinya

php递归无限极分类速度慢怎么办

1、首先将json解码成数组, 用json_decode 函数 注意 一定要加上第二个参数 否则他会返回一个对象。接下来就是的递归了。这是一个最简单的递归只要逐个遍历即可。

1571125366(1).jpg

2、下面是完整的代码: 

$data= json_decode($str,true); 
$options = getChildren($data); 
function getChildren($parent,$deep=0) { 
foreach($parent as $row) { 
$data[] = array("id"=>$row['id'], "name"=>$row['name'],"pid"=>$row['parentid'],'deep'=>$deep); 
if ($row['childs']) { 
$data = array_merge($data, getChildren($row['childs'], $deep+1)); 
} } 
return $data; 
} 
foreach ($options as $row) { 
echo str_pad("",$row['deep']*3, "-",STR_PAD_RIGHT); 
echo $row['name']; 
} 
?>
Salin selepas log masuk

推荐教程:PHP视频教程

Atas ialah kandungan terperinci php递归无限极分类速度慢怎么办. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan