【问题标题】:adding to an array with each recursive function [duplicate]使用每个递归函数添加到数组中[重复]
【发布时间】:2013-06-13 11:16:02
【问题描述】:

我想在调用每个递归函数时添加到数组中。我已经尝试了几种方法,但只是在错误之后出现错误。这就是我要做的事情,应该足以解决我想要完成的事情。

function structure($x, $structure = array()) {
$qry = mysql_query("SELECT `parent_id` FROM `categories` WHERE `categories_id`=$x");
$result = mysql_fetch_assoc($qry);
$cat = $result['parent_id'];
if($cat !=0) {
    structure($cat, $structure[] = $cat);
}
echo $cat.' >';
return $structure;
}

echo structure(22);
var_dump($structure);

所以我也试图返回数组,但没有成功。我也不确定如何从函数返回数组。

因此,我将不胜感激有关如何将每个递归函数添加到数组并将函数外部的数组返回到可用变量中的帮助。

【问题讨论】:

  • $structure = structure(22); 呢?
  • 哦,那我可以这样返回数组吗?不过,在我首先创建数组之前,我无法对其进行测试。

标签: php arrays function


【解决方案1】:
if($cat !=0) {
    $structure = structure($cat, $structure[] = $cat);
}

由于结构()返回一个值,你需要将它设置为一个变量,所以这个变量在每次调用时都会被输入。 最后:

$whatever = structure(22);
var_dump($whatever );

【讨论】:

    猜你喜欢
    • 2021-01-17
    • 1970-01-01
    • 2021-06-23
    • 1970-01-01
    • 2019-10-21
    • 1970-01-01
    • 2022-01-03
    • 1970-01-01
    • 2016-08-16
    相关资源
    最近更新 更多