• PHP 基础知识


    Array 数组

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

    可以用 array() 语言结构来新建一个数组。它接受任意数量用逗号分隔的 键(key) => 值(value)对。

    key 可以是 integer 或者 string。value 可以是任意类型。

    此外 key 会有如下的强制转换:

    包含有合法整型值的字符串会被转换为整型。例如键名 "8" 实际会被储存为 8。但是 "08" 则不会强制转换,因为其不是一个合法的十进制数值。
    浮点数也会被转换为整型,意味着其小数部分会被舍去。例如键名 8.7 实际会被储存为 8。
    布尔值也会被转换成整型。即键名 true 实际会被储存为 1 而键名 false 会被储存为 0。
    Null 会被转换为空字符串,即键名 null 实际会被储存为 ""。
    数组和对象不能被用为键名。坚持这么做会导致警告:Illegal offset type。


    转换为数组

    对于任意 integer,float,string,boolean 和 resource 类型,如果将一个值转换为数组,将得到一个仅有一个元素的数组,其下标为 0,该元素即为此标量的值。换句话说,(array)$scalarValue 与 array($scalarValue) 完全一样。

    如果一个object类型转换为array,则结果为一个数组,其单元为该对象的属性。键名将为成员变量名,不过有几点例外:整数属性不可访问;私有变量前会加上类名作前缀;保护变量前会加上一个 '*' 做前缀。这些前缀的前后都各有一个 NULL 字符。这会导致一些不可预知的行为。

    将 NULL 转换为 array 会得到一个空的数组。

    比较

    可以用 array_diff() 和数组运算符来比较数组。

    数组运算符

    数组(Array) 的赋值总是会涉及到值的拷贝。使用引用运算符通过引用来拷贝数组。


    实用函数

    unset() 函数允许删除数组中的某个键。但要注意数组将不会重建索引。如果需要删除后重建索引,可以用 array_values() 函数。

    foreach 控制结构是专门用于数组的。它提供了一个简单的方法来遍历数组。

    array_values(array $input) 返回 input 数组中所有的值并给其建立数字索引。

    如果您觉得阅读本文对您有帮助,欢迎转载本文,但是转载文章之后必须在文章页面明显位置保留此段声明,否则保留追究法律责任的权利。

    作  者:blog.jpdou.top

    原文链接:http://blog.jpdou.top/php-important-points/

  • 相关阅读:
    03 选看 OpenID Connect 简介
    02 选看 OAuth 2.0 简介(下)
    01 选看 OAuth 2.0 简介(上)
    07 为 MVC 客户端刷新 Token
    06 Authorization Code Flow 实例
    05 Resource Owner Password Credentials 授权
    04 建立 IdentityServer4 项目,Client Credentials
    Identity Server 4 原理和实战(完结)
    依赖注入 Unity入门
    依赖注入 Autofac的高级使用
  • 原文地址:https://www.cnblogs.com/jpdoutop/p/5779840.html
Copyright © 2020-2023  润新知