было исправлено на Некоторые проблемы с переходом от одной функции к другой в цикле в php
Эта двойная функция будет переходить к последнему измерению каждого массива в $ a, а когда она больше не является массивом, она будет отображать количество циклов, которое она выполнила, чтобы получить разделитель |
Недостатком этого кода является то, что он только повторяет и не может быть возвращен (обычным способом).
function cc($b, $n)
{
$n++.' ';
countdim($b, $n);
}
function countdim($a, $n = 0)
{
if(is_array($a))
{
foreach($a as $b)
{
cc($b, $n);
}
}else
{
echo $n.'|';
}
}
countdim($a);
Здесь я сделал функцию с возвратом, но ... это возвращение из html, затем "GET" обратно в php при нажатии кнопки .. Я не знаю другого способа заставить его работать ..
просто назовите ваш массив $ a и нажмите кнопку: /
$max_depth_var = isset($_REQUEST['max_depth_var']) ? $_REQUEST['max_depth_var'] : 0;
?>
<form id="form01" method="GET">
<input type="hidden" name="max_depth_var" value="<?php
function cc($b, $n)
{
$n++.' ';
bb($b, $n);
}
function bb($a, $n = 0)
{
if(is_array($a))
{
foreach($a as $b)cc($b, $n);
}else
{
echo $n.', ';
};
}
bb($a); ?>">
<input type="submit" form="form01" value="Get max depth value">
</form><?php
$max_depth_var = max(explode(', ', rtrim($max_depth_var, ",")));
echo "Array's maximum dimention is $max_depth_var.";