Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/261.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
只是无法在Php中获得for循环来生成所需的数组_Php_Mysql_Arrays - Fatal编程技术网

只是无法在Php中获得for循环来生成所需的数组

只是无法在Php中获得for循环来生成所需的数组,php,mysql,arrays,Php,Mysql,Arrays,我需要for循环返回一个如下所示的数组 $nullArray =array( 0 => array("id" => 1, "label" => "test 1", "type" => "folder"), array("id" => 2, "label" => "test 2", "type" => "folder"), array("id" => 3, "label" => "test 3", "type

我需要for循环返回一个如下所示的数组

    $nullArray =array(
 0 => array("id" => 1, "label" => "test 1", "type" => "folder"), 
      array("id" => 2, "label" => "test 2", "type" => "folder"),
      array("id" => 3, "label" => "test 3", "type" => "folder"),
      etc...
      etc... 
      etc...
);
我现在有什么

 $nullArray = array();
$numOfVer = mysql_num_rows($result);
$startArray= array();

//SETS FIRST NODE
for($i =0;$i < $numOfVer;$i++)
{
    $label = mysql_result($result, $i);
    $id = $i+1;
    $startArray = array(array('id' => $id,'label' => $label, "type" => "folder"));


    //$startArray[]['id'] = $id;
    //$startArray[]['label'] = $label;
    //$startArray[]['type'] = "folder";
     //array_push($startArray,array(array('id' => $id,'label' => $label, "type" => "folder")));
    //$nullArray[0]= array(array('id' => $id,'label' => $label, "type" => "folder"));
    //array_push($nullArray[0],array('id' => $id,'label' => $label, "type" => "folder"));
}
$nullArray[0] = $startArray;

    echo json_encode($nullArray[0]);
$nullArray=array();
$numoffer=mysql\u num\u行($result);
$startArray=array();
//设置第一个节点
对于($i=0;$i<$numover;$i++)
{
$label=mysql\u结果($result,$i);
$id=$i+1;
$startArray=array(数组('id'=>$id,'label'=>$label,“键入”=>“文件夹”);
//$startArray[]['id']=$id;
//$startArray[]['label']=$label;
//$startArray[]['type']=“文件夹”;
//数组推送($startArray,数组(数组($id'=>id,'label'=>label,“键入”=>“文件夹”));
//$nullArray[0]=数组(数组('id'=>$id,'label'=>$label,“键入”=>“文件夹”);
//数组推送($nullArray[0],数组($id'=>id,'label'=>label,“type”=>folder”);
}
$nullArray[0]=$startArray;
echo json_encode($nullArray[0]);

我所评论的一切都是我尝试过的,但都失败了。对于这么简单的事情,我已经做了太久了,所以我决定寻求一些帮助!先谢谢你!:)

在for循环中,您正在重新标记$startArray,这就是之前的值被删除的原因。试试这个

$nullArray = array();
$numOfVer = mysql_num_rows($result);
$startArray= array();

for($i =0;$i < $numOfVer;$i++)
{
    $label = mysql_result($result, $i);
    $id = $i+1;
    $startArray[] = array('id' => $id,'label' => $label, "type" => "folder");
}
$nullArray=array();
$numoffer=mysql\u num\u行($result);
$startArray=array();
对于($i=0;$i<$numover;$i++)
{
$label=mysql\u结果($result,$i);
$id=$i+1;
$startArray[]=array('id'=>$id,'label'=>$label,“键入”=>“文件夹”);
}

在for循环中,您正在重新澄清$startArray,这就是之前的值被删除的原因。试试这个

$nullArray = array();
$numOfVer = mysql_num_rows($result);
$startArray= array();

for($i =0;$i < $numOfVer;$i++)
{
    $label = mysql_result($result, $i);
    $id = $i+1;
    $startArray[] = array('id' => $id,'label' => $label, "type" => "folder");
}
$nullArray=array();
$numoffer=mysql\u num\u行($result);
$startArray=array();
对于($i=0;$i<$numover;$i++)
{
$label=mysql\u结果($result,$i);
$id=$i+1;
$startArray[]=array('id'=>$id,'label'=>$label,“键入”=>“文件夹”);
}

具体地说,上面的代码中有什么不起作用?请像这样使用
$i
试试:
$startArray[$i]['id']
等等。下面的家伙解决了这个问题!谢谢大家的努力!具体地说,上面的代码中有什么不起作用呢?试着用
$i
像这样:
$startArray[$i]['id']
等等。下面的家伙解决了这个问题!谢谢大家的努力!非常感谢。工作得很有魅力。有趣的是,当你盯着一段代码看太久的时候,你忘记了最简单的事情。谢谢!工作得很有魅力。有趣的是,当你盯着一段代码看太久的时候,你会忘记最简单的事情。