WEB安全之PHP基础(二):PHP数组及运算符、控制语句

  • 补充:替换函数——把字符串里面的1转为0
  • 在这里插入图片描述
    在这里插入图片描述

1.php数组

  • 数组是一个能在单个变量中存储多个值的特殊变量。
  • 在 PHP 中,array() 函数用于创建数组:
    array();

数组的分类

  • 在 PHP 中,有三种类型的数组:
    数值数组 - 带有数字 ID 键的数组
    关联数组 - 带有指定的键的数组,每个键关联一个值
    多维数组 - 包含一个或多个数组的数组

数组的声明

$array1 = array();

<?php
$cars=array("Volvo","BMW","Toyota");//简单的数组
echo count($cars);//count()返回数组的长度
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");//关联数组
//其中包含多个键值对
echo "Peter is " . $age['Peter'] . " years old.";
foreach($age as $x=>$x_value)//关联数组的遍历方法
{
    echo "Key=" . $x . ", Value=" . $x_value;
    echo "<br>";
}
?>
  • 打印数组
    在这里插入图片描述
  • 数值数组
    在这里插入图片描述
  • 关联数组
    在这里插入图片描述
    在这里插入图片描述
  • 多维数组
    在这里插入图片描述
    在这里插入图片描述

数组的取值

  • 取0下标,取到a
    在这里插入图片描述
    在这里插入图片描述
  • 通过键来返回
    在这里插入图片描述
    在这里插入图片描述
  • 数组的长度
    在这里插入图片描述
    在这里插入图片描述
  • 遍历数组元素,数值型
    在这里插入图片描述
    在这里插入图片描述
  • 直接输出值
    在这里插入图片描述
    在这里插入图片描述
  • 在这里插入图片描述
    在这里插入图片描述
  • for循环只能遍历数值数组
    在这里插入图片描述
    在这里插入图片描述
  • 在这里插入图片描述
    在这里插入图片描述

数组排序的内置函数

  • 在PHP 中定义了多个数组排序的内置函数:
  • sort() - 对数组进行升序排列
    rsort() - 对数组进行降序排列
    asort() - 根据关联数组的值,对数组进行升序排列
    ksort() - 根据关联数组的键,对数组进行升序排列
    arsort() - 根据关联数组的值,对数组进行降序排列
    krsort() - 根据关联数组的键,对数组进行降序排列
  • abc的降序排序
    在这里插入图片描述
    在这里插入图片描述

数组的操作

数组的合并

$array1 =array('a','b','c');
$array2 = array('a1'=>'php','a2'=>'python','a3'=>'java');
$array3 = array_merge($array1,$array2);

在这里插入图片描述
在这里插入图片描述

添加数组元素

  • array_push() 函数向第一个参数的数组尾部添加一个或多个元素(入栈),然后返回新数组的长度。
array_push($array1,'d','e');
print_r($array1);
下表为空 自动添加参数
$array1[]='d';
有键值的
$array1['a4']='javasciprt';
  • 增加值
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 增加一个关联数组
    在这里插入图片描述
    在这里插入图片描述
  • 添加到指定位置
<?php
$array1 = array('a', 'b', 'c', 'd', 'e');
$array2 = array('x');
array_splice($array1, 3, 0, $array2); // 插入到位置3且删除0个
print_r($array1);
?>
  • 更改下标为0的
    在这里插入图片描述
    在这里插入图片描述
  • 更改关联数组
    在这里插入图片描述
    在这里插入图片描述
  • 添加指定位置的值,(从多少位置删除,并增加多少位置的值)
  • array_splice(数组,位置,删除几个,增加元素)
  • 在b前面增加
    在这里插入图片描述
    在这里插入图片描述
  • 删除一个值,b不见了
    在这里插入图片描述
    在这里插入图片描述
  • 删除某一个元素
<?php
$array1 = array('a', 'b', 'c', 'd', 'e');
$array2 = array('x');
array_splice($array1, 3, 1); 
print_r($array1);
?>
  • unset 销毁指定的元素
$array1 = array('a', 'b', 'c', 'd', 'e');
unset($array1[0]);
print_r($array1);
  • 销毁第0个,a就没了
    在这里插入图片描述
    在这里插入图片描述
  • 销毁指定键值
    在这里插入图片描述
    在这里插入图片描述
  • array_pop():将数组最后一个单元弹出(出栈)
  • 修改数组中某个元素
$array1 = array('a', 'b', 'c', 'd', 'e');
$array1[0]='aa';
print_r($array1);
  • 字母中最后一个元素弹出
    在这里插入图片描述
    在这里插入图片描述

常用的数组函数

is_array 判断是否为数组
count 数组的元素数目
array_search — 在数组中搜索给定的值,如果成功则返回相应的键名
array_key_exists()在给定的 key 存在于数组中时返回 TRUE
array_unshift() 将传入的单元插入到 array 数组的开头。注意单元是作为整体被插入的,因此传入单元将保持同样的顺序。所有的数值键名将修改为从零开始重新计数,所有的文字键名保持不变
array_shift() 将array 的第一个单元移出并作为结果返回,将 array 的长度减一并将所有其它单元向前移动一位。所有的数字键名将改为从零开始计数,文字键名将不变。
array_unique() 接受 array 作为输入并返回没有重复值的新数组。注意键名保留不变。 array_unique() 先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名。这并不意味着在未排序的 array 中同一个值的第一个出现的键名会被保留。
in_array — 检查数组中是否存在某个值 如果找到指定的值则返回 TRUE,否则返回 FALSE 。in_array()是区分大小写的。

  • 判断是否为数组
    在这里插入图片描述
    在这里插入图片描述
  • 传入字符串输出为空
    在这里插入图片描述
    在这里插入图片描述
  • 在数组中搜索给定的值,如果成功则返回相应的键名
  • 搜索php让它返回键名
    在这里插入图片描述
    在这里插入图片描述
  • 在给定的 key 存在于数组中时返回 TRUE
  • 查看array2中是否存在键a1,存在返回true
    在这里插入图片描述
  • 接受 array 作为输入并返回没有重复值的新数组。注意键名保留不变。 array_unique() 先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名。这并不意味着在未排序的 array 中同一个值的第一个出现的键名会被保留。
  • 即把重复的值去掉
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 检查数组中是否存在某个值 如果找到指定的值则返回 TRUE,否则返回 FALSE 。in_array()是区分大小写的。
  • 判断是否为数组
    在这里插入图片描述
    在这里插入图片描述
  • 数组的声明(补充)
  • 数组的另一种形式
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

2.运算符

  • 基本运算符:
    在这里插入图片描述
  • 在这里插入图片描述
    在这里插入图片描述
  • 赋值运算符:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 递增/递减运算符:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 比较运算符:
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • ===,要同类型
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 逻辑运算符:
    在这里插入图片描述

  • 在这里插入图片描述
    在这里插入图片描述
  • 异或
    在这里插入图片描述
    在这里插入图片描述

  • 在这里插入图片描述
    在这里插入图片描述

  • 在这里插入图片描述
    在这里插入图片描述
  • 三元运算符:
    (expr1) ? (expr2) : (expr3)
  • 3大于2返回true否则返回false
    在这里插入图片描述
    在这里插入图片描述
  • 在这里插入图片描述
    在这里插入图片描述

3.控制语句

  • 控制语法的语句结构和其他大多数语言结构相同,有以下两类:

3.1条件控制语句

  • if 语句 - 在条件成立时执行代码
    if…else 语句 - 在条件成立时执行一块代码,条件不成立时执行另一块代码
    if…elseif…else 语句 - 在若干条件之一成立时执行一个代码块
    switch 语句 - 在若干条件之一成立时执行一个代码块
  • 1不大于2
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • if else
    在这里插入图片描述
    在这里插入图片描述
  • if else else
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • switch
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • break用来终止

3.2循环控制语句

  • while - 只要指定的条件成立,则循环执行代码块
    do…while - 首先执行一次代码块,然后在指定的条件成立时重复这个循环
    for - 循环执行代码块指定的次数
    foreach - 根据数组中每个元素来循环代码块
  • break语句用于终止本次循环
    continue语句的作用是跳出本次循环,接着执行下一次循环
  • while
  • 来到99,不执行
    在这里插入图片描述
    在这里插入图片描述
  • 继续执行
    在这里插入图片描述
    在这里插入图片描述
  • do…while 不管条件是否成立,内容都会执行一次
  • 执行1,执行99次+1
    在这里插入图片描述
    在这里插入图片描述
  • 输出内容一样
    在这里插入图片描述
    在这里插入图片描述
  • for循环
    在这里插入图片描述
    在这里插入图片描述
  • for和foreach循环遍历数组比较多
  • 获取值
    在这里插入图片描述
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值