PHP数组定义和输出

2023-12-22 23:48:44

数组就是一组数据的集合,把一系列数据组织起来,形成一个可操作的整体。
PHP中的数组与Java的数组不一样,需要有key(键)和value(值),相当于Java中数组和键值对的结合。

数组的定义

array()语言结构法

array()语言结构中的数组元素使用“键=>值”的方式进行表示,各元素之间使用逗号(,)进行分割,比如:

<?php
      $ProgrammingLanguage =array("java","c","Assembly Language","Rust","PHP","go");//定义数组
?>

赋值方式

使用赋值方式定义数组,实际上就是创建一个数组变量,然后使用赋值运算符直接给变量赋值。比如:

$fruits[] = "apple";
$fruits[] = "orange";
$fruits[] = "banana";

短数组定义法

短数组定义法([])与array()语法结构相同,只需将array()替换为[]即可。

$grades=[1,2,3,4,5,6];

数组的输出

print_r函数

print_r(数组名)就可以把数组里边的内容通过下边的格式进行输出:

Array([1] =>1,[2] =>2,[3] =>3,......)

下边的代码:

<?php
      $ProgrammingLanguage =array("java","c","Assembly Language","Rust","PHP","go");//定义数组
      print_r($ProgrammingLanguage);
?>

会输出Array ( [0] => java [1] => c [2] => Assembly Language [3] => Rust [4] => PHP [5] => go )

在这里插入图片描述

var_dump函数

var_dump()函数是系统函数,作用是输出变量的相关信息。
var_dump(数组名)输出格式是:

array(数组元素个数) { [1]=> 类型 值1  [2]=> 类型 值2   [3]=> 类型 值3   [4]=> 类型 值4 ......} 

比如

<?php
      $grades=[1,5,3,4];
      var_dump($grades);//输出数组元素
?>

输入如下:

array(4) { [0]=> int(1) [1]=> int(2) [2]=> int(3) [3]=> int(4) } 

再比如

<?php
      $ProgrammingLanguage =array("java","c","Assembly Language","Rust","PHP","go");//定义数组
      print_r($ProgrammingLanguage);
?>

会输出

array(6) { [0]=> string(4) "java" [1]=> string(1) "c" [2]=> string(17) "Assembly Language" [3]=> string(4) "Rust" [4]=> string(3) "PHP" [5]=> string(2) "go" } 

echo函数加foreach

遍历索引数组

格式为:

foreach ($数组名 as $元素名){
循环体;
}

比如:

<?php
      $grades=[1,2,3,4];
      foreach ($grades as $grade){
          echo "$grade<br>";
      }
?>

在这里插入图片描述

遍历关联数组

foreach($array as $key => $value){
循环体;
}
//$array表示数组 as $key表示键 $value表示值

比如:

<?php
      $ProgrammingLanguage =array("java","c","Assembly Language","Rust","PHP","go");//定义数组
      foreach($ProgrammingLanguage as $key => $value){
        echo "Key: " . $key . ", Value: " . $value." <br>";
    }
?>

在这里插入图片描述

文章来源:https://blog.csdn.net/qq_42108074/article/details/135160308
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。