题目: 见图片, 该图是某网页的一个区域的截图,分类的级数不固定. 现有一个PHP变量:
$cats = array(
array(
'id' => 1,
'name' => '学术和教育',
'children' => array(
array(
'id' => 2,
'name' => '自然科学',
'children' => null,
),
// ...
),
),
// ...
);
把上面的PHP数据用缩进换行文本的形式保存到文件
实现结果如下:
function createcates($arr,$i=1){
static $str = null;
if ($arr && is_array($arr)){
$len = $i;
foreach ($arr as $val){
$str .= str_repeat('#',$i).$val['id'].','.$val['name']."\r\n";
if ($val['children'] && is_array($val['children'])){
createcates($val['children'],++$len);
}
}
}
return $str;
}
$return = createcates($cats);
$fp=fopen( 'list.txt ', 'wb');
fwrite($fp, $return);
fclose($fp);
echo 'ok';
本人水平有限,如有更好的代码,望请指教!