【问题标题】:i run this code but it donot type the array我运行这段代码,但它没有输入数组
【发布时间】:2021-03-23 14:45:40
【问题描述】:
  $studentArray =  array(
    array("ahmed2",15,3.5),
    array("ahmed1",15,2.4),
    array("ahmed3",29,3.9),
    array("ahmed4",22,3),
    array("ahmed5",23,2.8)
  );
  foreach($studentArray as $key => $value ){
        echo $key. '-'.$value.'<br>'; 
  }

【问题讨论】:

  • 目前尚不清楚您究竟想在这里实现什么。你有一个二维数组,但你表现得好像它是一个基于键值的数组(实际上是一个映射)。
  • 我不确定您的问题/问题是什么。能详细解释一下吗?
  • 您的问题是数组到字符串的转换。 $value是数组,数组不能回显。
  • 我想在分隔行中打印数组中的每个索引,并且此消息出现“注意:第 74 行 1-Array 上 C:\xampp\htdocs\lamia\index.php 中的数组到字符串转换” @MCEmperor
  • El_Vanja 所说的。您的数组是二维的,因此每个元素又是一维数组。回显一个数组会产生字符串“Array”。

标签: php for-loop multidimensional-array


【解决方案1】:

由于您在 $studentArray 中有学生详细信息数组,因此您需要一个额外的 foreach 来循环内部数组。

在您的结构中尝试以下代码。

    $studentArray =  array(
        array("ahmed2",15,3.5),
        array("ahmed1",15,2.4),
        array("ahmed3",29,3.9),
        array("ahmed4",22,3),
        array("ahmed5",23,2.8)
    );
    foreach($studentArray as $studentDetail ){
        foreach($studentDetail as $key => $value ){
            echo $key. '-'.$value.'<br>';
        }
    }

为了更好的理解,试试下面的代码。

    $studentArray =  array(
        array("val1"=>"ahmed2","val2"=>15,"val3"=>3.5),
        array("val1"=>"ahmed1","val2"=>15,"val3"=>2.4),
        array("val1"=>"ahmed3","val2"=>29,"val3"=>3.9),
        array("val1"=>"ahmed4","val2"=>22,"val3"=>3),
        array("val1"=>"ahmed5","val2"=>23,"val3"=>2.8)
    );
    
    foreach($studentArray as $student){
        foreach($student as $key => $value) { 
            echo $key. '-'.$value.'<br>';
        }
        echo '<br>';
    }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-01-30
    • 1970-01-01
    • 2023-02-03
    • 2021-09-06
    • 2012-07-03
    • 1970-01-01
    • 2023-01-19
    • 2022-06-22
    相关资源
    最近更新 更多