学习要点
- 1.数组赋值
- 2.显示数组的值
- 3.修改指定键名的值
- 4.删除一个数组元素
- 5.删除整个数组变量
- 6.无须定义 直接生成一个新的数组
<?php
//1.数组赋值
$age=array();
//使用[]向数组中添加一个没有键名的值
$age[]="hello";
//添加有键名的值
$age["18"]="十八";//键名会被当做数字
$age[19]="19";
print_r($age);//Array ( [0] => hello [18] => 十八 [19] => 19 )
echo "<hr />";
//2.显示数组的值
echo $age[19];//19
//3.修改指定键名的值
$age[19]=20;
echo "<br />";
echo $age[19];//20
echo "<hr />";
//4.删除一个数组元素
unset($age[18]); //
print_r($age); //Array ( [0] => hello [18] => 十八 )
echo "<hr />";
//5.删除整个数组变量
unset($age);
print_r($age);//Undefined variable: 此时就是没有定义
if(isset($age))
{
echo '数组定义了';
}
else
{
echo '数组未定义';//这一行执行
}
echo "<hr />";
//6.无须定义 直接生成一个新的数组
$newage[]=35;
$newage[]=46;
print_r($newage);//Array ( [0] => 35 [1] => 46 )
?>
学习要点
- unset对数组的影响
- 用于删除数据的元素,但数组的索引 key不变
- array_values重建一个新数组【会得到一个新的数据】 键肯定发生变化
- 重名键对数据的影响【后面的会覆盖前面的元素】
<?php
//使用unset函数对数组产生的影响
$number=array(1,2,3,4,5,6,7,8,9);
echo $number[5];//6 [] 括号中的数字表示的键名
echo '<br/>';
print_r($number);
echo "<hr />";
unset($number[5]);//移除掉 5号位上的 键和值,此时后面的数组将会发生向前移位,数组的索引不会被重建
print_r($number);
echo "<hr />";
//重建了数组索引
$newNumber=array_values($number);
echo "<br />";
print_r($newNumber);
echo "<hr />";
//键值对的影响
$returnData = array(
'transType' => 'sales',
'orderNo' => '201510198033887',
'merNo' => '968',
'terNo' => '88816',
'currencyCode' => 'USD',
'amount' => '98.14',
'tradeNo' => 'HP1510190848271792',
'respCode' => '00',
'respMsg' => '00:success'
);
print_r($returnData);
unset($returnData["orderNo"]); //其他键值对不会发生移位
echo "<br />";
print_r($returnData);
echo "<br />";
echo '重名键对数据的影响';
echo "<br />";
$you=array(
'a'=>1,
'a'=>2,
'a'=>3,
'b'=>4
);
print_r($you);//Array ( [a] => 3 [b] => 4 )
?>