PHP基础入门

本文详细介绍了PHP的各种核心概念,包括数据类型、常用数组和字符串函数,魔术常量与超全局变量的使用,客户端/服务端IP获取,值传递与引用传递的区别,以及isset()和empty()的比较,最后提到PHP的PSR编程规范。
摘要由CSDN通过智能技术生成

一、PHP数据类型

  • Boolean 布尔类型
  • Integer 整型
  • Float 浮点型
  • String 字符串
  • Array 数组
  • Object 对象
  • Resource 资源类型
  • NULL

二、 PHP 常用数组函数

  • 重点看函数的‘参数’和‘返回值‘
  1. array() 创建数组 implode()数组转字符串, explode(‘,’,$str)使用一个字符串分割另一个字符串 返回array
  2. in_array() 判断元素是否在数组中(遍历查找 o(n)) array_key_exists(),key 是否存在索引查找o(1)
  3. count() 返回数组中元素的数目
  4. array_merge() 将多个数组合并成一个数组 , array_combine() 已第一个参数作为key重新组合一个索引数组
  5. array_diff() 比较两个或两个以上数组的差异
  6. array_intersect() 获取两个或两个数组以上的交集
  7. array_keys() 获取数组的 key 列表 array_column() 获取指定列的数据
  8. array_values() 获取数组的值列表
  9. array_unique() 删除数组中的重复值
  10. array_push()将一个或多个元素插入数组的末尾(入栈)
  11. array_pop() 弹出并返回 array 数组的最后一个单元(出栈)
  12. array_walk(),array_map(),array_filter() 使用用户自定义函数对数组中的每个元素做回调处理
  13. asort() 对数组进行排序并保持索引关系; arsort() 对数组进行逆向排序并保持索引关系
  14. sort()按值排序, rsort()按值降序排序, ksort() 按键排序 ; krsort() 按键逆向排序
    array_multisort()
  15. compact() 将变量整合成数组; extract() 将数组中的每个值以键的名分解成变量
  16. array_count_values() 函数用于统计数组中所有值出现的次数。返回一个数组,[原数组值=>次数]

三、PHP 常用字符串函数

  • 重点看函数的‘参数’和‘返回值’
  1. trim(string $str [, string $character_mask ]) 移除字符串两侧的空白字符和其他字符;
    ltrim()移除左侧 rtrim() 移除右侧 ,第二个参数是想移除的字符
  2. strlen() 获取字符串的长度 mb_strlen() 获取字符串长度(可指定字符编码,对中文字符串计算长度)
    strlen(‘中国’) =》6
    //安装mbstring 扩展
    mb_strlen(‘中国’,‘utf8’) mb_strlen(‘中国’) =》2
  3. substr()返回字符串的一部分
  4. str_replace() 子字符串替换
  5. str_repeat () 重复一个字符串
  6. is_string() 检测变量是否是字符串 对应is_numberic() 检查是否是数值类型
  7. str_shuffle () 随机打乱一个字符串
  8. sprintf() 返回根据格式化字符串生成的字符串(通常用于获取分表后的数据表名)
  9. strstr() 查找字符串的首次出现的位置开始到结尾的字符串 stristr() 忽略大小写,同 strstr(),
  10. strpos() 查找字符串首次出现的位置 ,没有返回false
  11. explode(‘,’,$str)使用一个字符串分割另一个字符串 返回array

四、魔术常量(魔术变量)前后双下划线

概念:所谓的魔术常量就是PHP预定义的一些常量,这些常量会随着所在的位置而变化。

  1. LINE 获取文件中的当前行号。
  2. FILE 获取文件的完整路径和文件名。
  3. DIR 获取文件所在目录。
  4. FUNCTION 获取函数名称(PHP 4.3.0 新加)。
  5. CLASS 获取类的名称(PHP 4.3.0 新加)。
  6. METHOD 获取类的方法名(PHP 5.0.0 新加)。
  7. NAMESPACE 当前命名空间的名称(区分大小写)。
  8. TRAIT Trait 的名字(PHP 5.4.0 新加)。

五、超全局变量

  • 超全局变量,又叫预定义变量,注意 变量前边只有一个下划线
  1. $GLOBALS :储存全局作用域中的变量
  2. $_SERVER :获取服务器相关信息
  3. $_REQUEST :获取POST和GET请求的参数
  4. $_POST : 获取表单的POST请求参数
  5. $_GET: 获取表单的GET请求参数
  6. $_FILES :获取上传文件的的变量
  7. $_ENV : 获取服务器端环境变量的数组
  8. $_COOKIE:获取浏览器的cookie
  9. $php_errormsg — 前一个错误信息
  10. $http_response_header — HTTP 响应头
  11. $argc — 传递给脚本的参数数目
  12. $argv — 传递给脚本的参数数组

六、PHP如何获取客户端/服务端IP,以及客户端的真实IP

  • 客户端IP:$_SERVER[‘REMOTE_ADDR’]
  • 客户端IP(代理透析): $_SERVER[‘HTTP_X_FORWARD_FOR’]
  • 服务端IP:$_SERVER[‘SERVER_ADDR’]

七、值传递和引用传递

  1. 值传递:函数范围内部对参数值的任何修改都不会影响函数外的变量的值
  2. 引用传递:函数内对参数值的任何修改都会导致函数外部变量的值
  3. 优缺点:
    • 值传递时,PHP必须复制出来一个新的变量和地址空间。 如果是比较大的字符串|变量或者对象来说,将会有很大的内存开销和代价;
    • 引用传递时不需要开辟新的内存地址,不需要复制值,尤其对比较大的变量来说,能够有效提高程序性能

八、isset()和empty()的区别

  1. isset(),判断变量是否存在和定义并且非null,可以传多个参数,如果其中一个不存在则返回false
  2. empty(),判断变量是否为空为假,只可传一个变量,如果为空或者值等同于false时则返回true,否则返回false
  3. ''空字符串, 0 整数0, 0.0浮点数0, '0’字符串0, null, false, array()空数组, 未声明定义的变量 用empty()判断都会返回true

九、psr PHP规范

PHP编程规范

  • 6
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

baiyyxx

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值