PHP 数组

拷贝传值:字符型、整型、浮点型、NULL、数组。
引用传值:对象、资源。

一、数组分类:

(1)枚举数组
数组的下标是从0开始的正整数,这样数组称为“枚举数组”。
$arr = array(10,20,30,40);
$arr[0] = 10;
$arr[1] = 20;
(2)关联数组
数组的下标是字符串,这样的数组称为“关联数组”。
$arr = array("name"=>"张三","age"=>24,"sex"=>"男");
(3)混合数组
所谓“混合数组”就是数组的下标既整型,也有字符串。下标只能是整数或字符串。

二、数组的创建:
1、$arr = array(10,20,30,40);
2、$arr[0] = 10;  //如果arr数组不存在,则创建,否则赋值。
    $arr[1] = 20;
    $arr[] = 20;  //未指定下标,默认从最大的下标后开始赋值。
    $arr["name"] = "张三"; 
3、$arr = array("name"=>"张三","age"=>24,"sex"=>"男");  //通过 => 来指定下标
4、$arr = array(20=>"张三",2=>24,"男","已婚");  //未指定下标的,默认从最大的下标后开始赋值。

数组通过传递地址,来改变数组的值:

<meta http-equiv="content-type" content="text/html;charset=utf-8">
<?php

//实例:在函数中,给数组添加一个元素
$arr = array("周更生","男",24);
$school = "北京理工大学";
function addElement(&$arr2,$school2)  //通过传递数组的地址来改变数组的值。否则数组是拷贝传值,并不会修改原数组的值(&$arr),前面加&表示地址。
{
	$arr2[] = $school2;
}
//调用函数
addElement($arr,$school);
//输出结果
var_dump($arr);
?>
数组的创建:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML>
 <HEAD>
  <TITLE> New Document </TITLE>
  <META name="Generator" content="EditPlus">
  <META name="Author" content="">
  <META name="Keywords" content="">
  <META name="Description" content="">
  <style type="text/css">
  </style>
  <script type="text/javascript">
  </script>
 </HEAD>

 <BODY>
  <?php
$arr1=array("张三","18",24,);
$arr2[0] = 10;  //如果arr数组不存在,则创建,否则赋值。
$arr2[1] = 20;
$arr2[] = 30;  //未指定下标,默认从最大的下标后开始赋值。
$arr2["name"] = "张三"; 

$arr3 = array("name"=>"张三","age"=>24,"sex"=>"男");  //通过 => 来指定下标
$arr4 = array(20=>"张三",2=>24,"男","已婚");  //未指定下标的,默认从最大的下标后开始赋值。

echo "<pre>";
print_r($arr1);
print_r($arr2);
print_r($arr3);
print_r($arr4);
echo "</pre>";
  ?>

 </BODY>
</HTML>
数组实例:

<meta http-equiv="content-type" content="text/html;charset=utf-8">
<?php
function dump($arr)
{
	echo "<pre>";
	print_r($arr);
	echo "<pre>";
}
//*******************************************************
//实例:使用数组保存个人信息
$arr = array("周更生","男",24,true,"大专","北京科技大学");
$str = "<h2>{$arr[0]}的基本信息如下</h2>";  //字符串中可以读取一维数组的值,但不能运算,不能读取二维数组的值。
$str .= "姓名:$arr[0]";
$str .= "<br>性别:$arr[1]";
$str .= "<br>年龄:$arr[2]";
$str .= "<br>婚否:".($arr[3] ? "已婚" : "未婚");  //括号是为了与前面的字符串分割。
$str .= "<br>学历:$arr[4]";
$str .= "<br>毕业院校:".($arr[5] ? $arr[5] : "未填写");
echo $str;

?>

多维数组:

<meta http-equiv="content-type" content="text/html;charset=utf-8">
<?php
function dump($arr)
{
	echo "<pre>";
	print_r($arr);
	echo "<pre>";
}
//*******************************************************
//(2)使用[],来创建多维数组
$arr["name"] = "周更生";
$arr["sex"]  = "男";
$arr["contact"]["tel"] = "010-12345678";
$arr["contact"]["mobile"] = "130110120119";
$arr["contact"]["qq"] = "88888888";
echo "座机号:".$arr['contact']['tel'];
dump($arr);

?>





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值