欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php基础语法规则梳理

程序员文章站 2022-03-23 15:25:56
...

php基础语法规则梳理

PHP基础语法:

一、php变量

php变量必须以”$”开头,例如:$name、$age

不能以数字开头,最后按照驼峰命名法

写在””引号中的变量最好用 { } 括起来,以免出现末端有字符不解析的情况

二、php数据类型

标量数据类型:字符串型、整型、浮点型、布尔型

复合数据类型:数组、对象

特殊数据类型:资源、NULL

1、整型

取值范围:-21亿~21亿

2、浮点型

取值范围:-1.7E-308~1.7E+308

由于浮点数不能转换成精确的二进制,所以有时在运输时会出现错误,例如:(0.7+0.1)*10==8 结果为false

3、字符串型

3-1、双引号

双引号解析变量的值
3-2、单引号

单引号解析变量的名

3-3、长字符串

$Str = <<<heredoc “heredoc”的名字可以随意取,按照变量命名规则

……. 填写字符串内容

heredoc; 结尾“heredoc”必须另起一行,分号结束

3-4、资源型

对第三方插件等的操作,如调用mysql数据库等,第三方的内容称之为资源

3-5、布尔型

只有true或false两种类型值

3-6、NULL型

如果变量不存在,返回NULL,空型只有一个值,就是NULL

3-7、数组

a、数组的分类

1、索引数组

数组的下标是从0开始的正整数,这样的数组称为“索引数组”

$arr=array(10,20,30,40);

$arr[0]=10;

2、关联数组

数组的下标是字符串,这样的数组称为“关联数组”

$arr=array(“name”=>”Tabb”,”sex”=>”gender”,”age”=>”22”);

由于关联数组没有整数型下标,所以不适合使用for循环来遍历

3、混合数组

数组下标既有整型,也有字符串,这样的数组称为“混合数组”

$arr = array("name" => "tabb", "age" => "20", "tom", 20);

echo $arr[0] 输出结果为“tom”;说明整型下标是从”tom”开始计算的

b、数组的创建

1、使用array()函数创建数组

通过“=>”重载符号给数组元素指定下标

如果数组元素没有指定下标,其下标为,当前最大索引+1,示例:

$arr=array(20=>”tabb”,2=>”28”,20,”tom”) 其中”20”的索引为21,如果都是字符下标,那么没有指定下标的元素,索引从0开始

使用array创建数组:

$arr = array([$key=>]$value,[$key=>]$value,…);

2、使用[]创建数组

$arr[“key”]=$value

不像js,可以不用先声明一个空数组,如果指定的数组不存在,会自动创建数组

[ ] 中括号内容为空时,创建数组

$arr[ ]=30;

如果数组不存在,就会创建一个数组,并添加第一个元素

如果数组存在,添加数组的元素的下标,是数组中的最大整形下标+1

c、多维数组

array(array(1,2,3,4),1,2,3,array(1,2,3,4))

使用[ ]中括号可以快速创建多维数组:

$arr[ ][ ][ ][ ]=10; 快速创建一个4维数组

d、数组相关函数

1、print_r()

打印关于变量的易于理解的信息

如果给出的数组或者对象,按照一定格式显示键和元素

2、unset()

删除数组元素,删除的是数组元素的值,下标还存在,不同于js的长度不变,此处删除元素后,数组长度发生变化

删除变量

3、count()

计算数组中的单元数目或对象中的属性个数

4、foreach()只能遍历数组

foreach( $arr as [$key=>]$value ){ } 如果是索引数组,[$key=>]这个内容可以不要

三、php数据类型判断

1、var_dump()

打印变量的相关信息,可以打印多个变量,用”,”逗号隔开

2、 is_*() 一组判断变量类型的方法,返回一个布尔值

is_bool():判断变量是不是布尔型

is_int():判断变量是不是整型

is_float ():判断变量是不是浮点型

is_numeric():判断变量是不是数值型

s_string():判断变量是不是字符串型

is_array():判断变量是不是数组型

is_object():判断变量是不是对象型

is_null():判断变量是不是空型

is_resource():判断变量是不是资源型

3、isset()

检测变量是否设置

返回值:如果变量存在,且不等于NULL,返回true,否则,返回false

4、empty()

检测一个变量是否为空,例如””,0,”0”,null,array(),var $var 以及没有任何属性的对象都将被认为是空,如果为空,返回值TRUE

四、数据类型的转换

(1)转换为bool值 (bool)

$a = "0";

$result = (bool)$a;

var_dump($result) 结果为: bool(false)

这些数据转换为bool值时为false:0、0.0、””、”0”、array()、null

资源类型转换为bool永远为true

(2)转换为整型数值 (int) (int)$name

1.如果以数值开头的字符串,将整型部分转换为整型数值,去除后面的字符

2.如果不是数值开头的字符串,转换为0

3.bool值true转换为1,false转换为0,null转换为0

(3)转换为浮点数值 (float) (float)$name

1.如果以数值开头的字符串,将数字部分转换为数值(包含浮点部分),去除后面的字符

2.如果不是数值开头的字符串,转换为0

3.bool值true转换为1,false转换为0,null转换为0

(4)转换为字符串 (string) (string)$name

1.null、false转换为””,空字符串

2.true转换为字符串“1”

五、运算符优先级

(1)数值运算符(+、-、/、*、%、++、--)

使用方法与js中的使用方法基本相同

(2)字符串运算符

“.”点运算符表示字符串链接符,与js中用”+”号拼接字符串类似

$a=”abc”;

$b=$a.100 或者使用”.=”表示自己与自己链接字符串:$a.=100

(3)赋值运算符(=、+=、-=、*=、/=、%=)与js基本相同

(4)比较运算符(>、<、>=、<=、==、!=、===、!==)与js基本相同

举例:10==“10px” 结果为:true;在包含数字的运算中“10px”会先转换为数值

举例:10===“10px” 结果为:false; 全等比较,包括数据类型

(5) 逻辑运算符(&&、||、!)与js基本相同

(6) 三元运算符(表达式?结果1:结果2)与js基本相同

(7) 运算符优先级

php基础语法规则梳理

推荐视频教程:PHP视频教程

以上就是php基础语法规则梳理的详细内容,更多请关注其它相关文章!