初识php的重点三

2020-09-03  本文已影响0人  mutang

初识php的重点三

一、数组

  1. 简介:PHP 中的数组实际上是一个有序映射。映射是一种把 values 关联到 keys 的类型。此类型在很多方面做了优化,因此可以把它当成真正的数组,或列表(向量),散列表(是映射的一种实现),字典,集合,栈,队列以及更多可能性。由于数组元素的值也可以是另一个数组,树形结构和多维数组也是允许的。

  2. 注意:

    1. 如果下标重复,后面的覆盖前面的
    2. 如果新添加的元素没有指定下标,则他的下标为已有下标的最大值加一(已有下标不全为负数)
    3. 如果已有下标都为负数,则新添加的元素的下标为0
    4. php5.4之后,可通过[]代替array()
  3. 检测数组:

    1. var_dump()
    2. gettype()
    3. is_array()——推荐
  4. 数值键名:

    1. 使用合法的数字字符串
    2. 浮点数会舍掉小数
    3. 布尔true ——1,false——0
    4. null——空字符串
  5. 创建

    1. 1.array()
      2.通过[]动态创建:
          $数字名[] = 值——下标连续的索引数值
          $数值名[键名] = 值 ——指定下标的索引数值和关联数组
      3.通过rang()和compact()
          rang()——下标连续的索引数值
          compact()——关联数组,只能写已经存在的变量名,且不需要加$
      4.define()
      
  6. 使用数组

    $数组名[键名]  |  $数组名{键名}
    
  7. 其他类型转换为数组

    1.  临时:(array)$var
    2.  永久:settype($var,$type)
    3. 注意:
        标量类型转换为数组,只有一个元素,键名为0,键值为标量的值
        null 转为数组是空数组
        不用把对象和资源转为数组
    
  8. 计算

    1. +:如果数组键名相同,只会使用表达式左面的数组的值
    2. ==:比较两数组是否相同
    3. ===:既要键名和键值相同,而且顺序页要相同(类型一致)
  9. 遍历

    1. int count($arr):得到数组中元素的个数

    2. for :只能遍历连续下标的数组

    3. foreach......: 仅能够应用于数组和对象

      foreach (array_expression as $value)
          statement
      foreach (array_expression as $key => $value)
          statement
          
      注意:
          1. 可以通过 :和 endforeach 代替{}
          2. php7中foreach的改变:
              foreach循环对数组内部指针不在起作用
              按照值进行循环的时候,foreach是对该数组的值拷贝
              按照引用进行循环的时候,在循环体内修改数组对循环有影响
      
    4. 数组指针遍历

      image-20200902182930315
    5. list()和each()遍历

      1. list():将下标连续的索引数值赋值给响应的变量
      2. each();得到当前指针所在位置的键值对,返回的是数值,包含4个部分,并且将指针向下移动一位
上一篇 下一篇

猜你喜欢

热点阅读