最近很忙,要咕咕咕了

MENU

PHP笔记

March 23, 2021 • Read: 268 • 技术

最近开始自学PHP


PHP语法结构

短标记:<? //PHP代码; ?>
ASP标记:<% //PHP代码; %>
脚本标记:<script language=‘PHP’>PHP代码;</script>
基本标记: <?php //PHP代码; ?>

纯PHP脚本文件建议使用不闭合基本标记:<?php //PHP代码

注释

行注释:#、//
块注释:*/

PHP变量设置

定义:$+变量名 = 值;
使用:$+变量名;

命名规则

由字母、数字和下划线组成,不能以数字开头
变量前面必须使用“$”符号
可以使用中文作为变量名(不建议)

PS:命名规则和C语言非常相似

预定义变量

系统定义的变量,都是数组,用户可以直接使用

$_SERVER
$_GET
$_POST
$_REQUEST
$_FILE
$_SESSION
$_COOKIE
$_ENV
$GLOBALS

可变变量

一个变量的值刚好是另外一个变量的名字,可以通过当前变量前面加上一个“$”符号访问

$a = ‘b’;
$b = ‘c’;
Echo $$a;        //输出c:$ + $a = $ + b = $b

变量传值

将一个变量赋值给另外一个变量:$a = $b;

值传递:$a = $b,将b变量的值复制一份给a变量,结果拥有两个变量,两个不同的值,彼此的修改互不影响
引用传递:$a = &$b,将b变量的值所在的内存地址复制给a变量,a与b变量同时指向一块内存空间,共同拥有一个值,任何一个修改都会影响到彼此

常量

1、 定义

define()函数:define(‘常量名’,常量值)
const关键字:const 常量名 = 常量值

2、 访问

直接使用常量名
使用constant函数:constant(‘常量名’)

系统常量

系统内部定义的常量,用户可以直接访问
普通系统常量:PHP_VERSION、PHP_INT_SIZE、PHP_INT_MAX等
魔术常量:__DIR__、__FILE__、__LINE__、__FUNCTION__、__CLASS__等


PHP数据分类:三大类八小类

1、 简单数据类型(标量数据类型)

整型:int/integer
浮点型:float/double
布尔型:bool/Boolean
字符串型:string

2、 复合数据类型

数组:array
对象:object

3、 特殊数据类型

资源:resource
空:NULL

文件包含四种形式

四种形式
Include/include_once/require/require_once

基本语法
Include ‘文件名’;
Include(‘文件名’);

文件加载原理

简单理解,就是将被加载文件的源代码放到加载文件所对应的代码处。但是文件的加载本质上是单独编译的,所以如果被包含文件本身有错误,那么不会在主文件编译的时候报错,而是需要等到主文件执行到加载文件的代码处的时候才会报错。

向上包含

即主文件先包含文件,然后使用被包含文件中的内容

向下包含

即主文件先准备好内容,然后包含被包含文件,然后可以在被包含文件中使用主文件中的内容

不同包含文件的区别

Include/require
Include和require都可以包含文件,区别在于两者在包含文件时,如果被包含文件不存在时报错不同
Include:警告文件找不到(代码继续执行)
Require:致命错误文件找不到(代码中断执行)

Include/include_once
Include和include_once都可以包含文件,区别在于include包含文件是不限次数的,碰到include系统就会执行一次;而include_once会记录文件包含,对同一个文件不管有多少个include_once都只包含一次

文件包含路径

绝对路径

磁盘绝对路径:盘符:/路径/文件名(Linux下没有盘符概念,直接使用/)
网络绝对路径/:主机名/路径/文件名

相对路径

./:当前文件所在文件夹
../:当前文件所在文件夹的上层文件夹

文件嵌套包含

基本概念

在一个文件中对另外一个文件进行包含,而被包含的文件同时也有文件的包含

注意事项

因为在文件系统中,每个文件夹下都有两个对应的隐藏文件夹.和..,分别代表当前文件夹和上级文件夹,而使用./或者../相对路径进行文件包含的时候,系统会从当前文件所执行的目录开始计算,而不是文件所在文件夹本身。这样就会导致嵌套包含的时候,出现找不到文件的问题。

解决方案:尽量使用绝对路径进行文件包含,可以避免嵌套包含问题


定义语法

定义

Function 函数名(形式参数列表){
    //函数体
    //返回值
}

命名规范
由字母、数字和下划线组成,但是不能以数字开头

PHP中函数名不区分大小写
PHP中函数名不允许重名

多单词函数名通常使用以下方式命名:

驼峰法:从第二个单词开始首字母大写(showName())
下划线法:使用下划线连接单词(show_name())

匿名函数

概念
没有函数名字的函数叫做匿名函数。

语法
1、 简单匿名函数

定义:$变量名 = Function(){//函数体}
访问:$变量名();

2、 闭包(closure)使用:让函数内部局部变量不会因为函数执行而释放

Function out(){
    //局部变量
    $inner = function() use(局部变量){//函数体}
    return $inner;
}
$in = out();    //执行完这一行out函数释放资源,但是局部变量因为被闭包引用不会释放
$in();

伪类型

概念
在PHP中本身不存在的数据类型,但是用来泛指PHP中的某些数据类型,主要为了方便查看操作手册。
种类
1、 number:数值类型,泛指整型和浮点型
2、 mixed:泛指所有数据类型

Last Modified: August 15, 2023
Archives QR Code
QR Code for this page
Tipping QR Code

离2025新年仅剩:-90天-23时-33分-60秒523毫秒