PHP基础知识

发布于:2025-06-23 ⋅ 阅读:(15) ⋅ 点赞:(0)

一、编码规范

(一)代码格式
  • 字符要求:全用半角英文(字母、符号 ),全角字符(如  )会报错,PHP 解析器仅识别半角(如 ; )。
  • 分号规则:每行代码结束建议加分号,虽语法允许最后一行省略,但企业开发为统一规范、避免报错,要求每行必加,增强代码可读性与可维护性。
(二)文件命名
  • 仅能用英文半角字符:包含小写字母(a-z )、大写字母(A-Z )、数字(0-9 )、下划线(_ ) 。
  • 禁用字符:中文、特殊符号(@ # 等 )、空格。
  • 大小写敏感:服务器(如 Linux )对文件名大小写敏感,命名不规范可能导致文件找不到,需严格区分。

二、变量与常量

(一)变量
  • 标识规则:必须以 $ 开头(如 $x ,$ 为美元符 )。
  • 命名限制
    • 首字母不能是数字;
    • 区分大小写($name 和 $Name 是不同变量 );
    • 禁用特殊符号、中文,下划线 _ 除外(如 $user_name 合法 ) 。
  • 代码示例:定义 $iphone6 = 5880$iphone6plus = 6088 ,通过 echo $iphone6 + $iphone6plus 输出和,体现变量参与运算特性。
(二)常量
  • 定义格式:用 define(常量名, 常量值) 创建,如 define('MAX_COUNT', 100) 。
  • 命名习惯
    • 通常大写(语法允许小写,大写更规范 );
    • 通常加引号(语法允许不加,加引号更规范 );
    • 建议用字母 + 下划线命名 。
  • 调用要求:在字符串里调用常量,需放引号外,如 echo "常量值是 " . CONST_NAME;CONST_NAME 为常量名 )。

三、数据类型(8 种基础类型 )

类型 说明 示例
string 连续字符序列,可存文本 echo "Hello PHP";
integer 存整数,正负均可 $num = 100; $num = -20;
float 存带小数点的数字(原书写错为 folat ) $price = 9.9;
boolean 表示真(true )或假(false ),用于逻辑判断 $isOk = true;
array 一组数据的集合,可存多类型元素 $arr = [1, "apple", true];
object 类的实例,用 new 创建,封装属性和方法 $obj = new User();User 为自定义类 )
resource 关联外部资源(如文件、数据库连接 ),由函数创建 $file = fopen("test.txt", "r");(打开文件资源 )
null 表示变量无值,未赋值变量默认是 null $var; // $var 为 null

四、字符串声明方式

  • 单引号:原样输出,不解析变量(如 '$name' 输出 $name ),仅转义单引号 \' 。
  • 双引号:解析变量(如 ("$name" 输出变量值 )和转义字符(如 \n 换行 )。
  • heredoc<<<LABEL ):大段文本,解析变量和转义,结束标记 LABEL; 需顶格。
  • nowdoc<<<'LABEL' ):大段文本,不解析变量和转义,单引号包裹标记。

五、文件包含函数

函数 包含失败表现 特点
include 返回警告,程序继续 用于动态包含(非必需文件,失败不阻断流程 )
require 报致命错误,程序终止 用于必需文件(如配置、核心逻辑 ),失败直接停
include_once 返回警告,程序继续 同 include ,但自动去重(同一文件只包含一次 )
require_once 报致命错误,程序终止 同 require ,且自动去重(防重复包含 )

说明include/require 是基础包含,_once 版本增加 “只包含一次” 逻辑;按需选择,必需文件用 require ,非必需用 include (原表格 Inlcude 为拼写错误,标准是 include )。

六、正则表达式

  • 作用:文本匹配与处理工具,用特定语法规则组成的字符串,实现查找、替换、验证文本内容,如验证邮箱格式、过滤敏感词、提取信息 。
  • 定界符规则
    • 禁用字符:a-z(大小写 )、0-9\ 。
    • 可用字符:/$%^@ 等,需成对出现(开始和结束一致 )。
    • 转义处理:若正则里需匹配定界符自身(如定界符用 /. ,正则需匹配 / ),要加转义 \(如 \/ );也可换其他定界符避免转义(如 #/# 用 # 当定界符 )。
  • 应用场景:验证格式(邮箱、手机号 )、替换内容(敏感词过滤 )、提取信息(URL、号码 )等 。

七、文件读取函数

(一)readfile
  • 语法int readfile ( string $文件名 ) 。
  • 功能:传入文件路径(或文件名,需路径正确 ),直接输出文件内容,返回读取的字节数。
  • 特点:简单直接,适合快速输出静态文本、小文件,无需手动打开 / 关闭文件资源,如 readfile('test.txt'); 。
(二)fopen + fread + fclose
  • fopen:打开文件,返回文件资源句柄(操作文件的 “入口” ),需搭配 fread 读内容、fclose 关闭资源 。
  • fread:通过 fopen 拿到的句柄,读取文件内容 。
  • fclose:关闭 fopen 打开的文件资源,释放系统占用 。
  • 特点:更底层、可控,适合需灵活控制读取过程场景(如按字节读、逐行读大文件 )。

八、文件上传流程(6 步骤 )

  1. 前端表单:HTML 表单设 enctype="multipart/form-data" ,提供文件选择框,提交到 PHP 脚本 。
  2. 接收信息:PHP 用 $_FILES 超全局变量,获取文件原名、临时路径、大小、错误码等 。
  3. 错误校验:通过 $_FILES['file']['error'] 检查系统级错误(如超 PHP 配置、临时目录异常 ),拦截故障 。
  4. 业务校验:自定义规则,验证文件大小(业务限额 )、类型(如仅允许图片 )、扩展名,筛除不合规文件 。
  5. 移动文件:用 move_uploaded_file($_FILES['file']['tmp_name'], '目标路径') ,把临时文件移到服务器指定目录 。
  6. 后续处理:上传成功后,可记录文件信息到数据库、返回访问链接,或做压缩、加水印等额外操作 。

网站公告

今日签到

点亮在社区的每一天
去签到