php重难点及关键,初识PHP的重点一

语法规范

文档中只有php代码,结束标记要省略掉

注释

单行:# 或者 //

多行:/* 代码 */

变量:

普通变量:$

可变变量:等量代换

$a = "b";

$b = "c";

$c = "hello world";

echo $c;//hello world

数据类型:

标量类型

整型:

浮点型

布尔型:true/TRUE/FALSE/false

字符串型:

定界符

单引号

双引号

heredoc:相当于双引号

nowdoc:相当于单引号

heredoc的写法:

<<

代码

名称:

<<

代码

名称;

nowdoc的写法:

<<

代码

名称:

+ 转义符

+ \n \r \t (源代码中有效果,页面上只显示一个空格)

+ 花括号{}

+ 将变量括成整体

+ 对字符串的指定操作进行CRUD

+ 复合类型

+ 数组

+ 对象

+ 特殊类型

+ 资源

+ 空

+ 变量未声明

+ 声明一变量且复制为null

+ 经过unset()注销过的变量

```php

说明:

1. 单引号:不解析变量,双引号:解析变量

2. 单引号只解析 \\ 和 \'

3. PHP引擎在解析变量的时候会尽可能多的向后取合法字符,认为取的越多,这个变量的含义越明确

例:

$username = 'king'

期望得到:名称King是我

echo "名称$username是我" //报错

echo "名称$username 是我" //名称$username 是我,此时用空格,防止解析错误

echo "名称{$username}是我"

echo "名称${username}是我"

```

```php

{}:

1. 不用对中文字符进行CRUD

2. {}对多个空格只解析为一个空格,但字符串的长度不变

$string = 'king';

$string{7} = 'e';

echo $string;//king e

var_dump($string);//string(8) "king e"

```

数据类型转换

自动转换:

程序会根据上下文环境自行转换

其他类型转数值型:

true —— 1

false —— 0

null —— 0

字符串如果以非法数值开始——0,

以合法数值开始,一直取到第一个非法数值结束

其他类型转换为字符串型

数值型转为本身

true——1

false,null——空字符串

数组——Array

资源——Resource.id #数字

对象不能直接转为字符串

其他类型转为布尔型(是假的有)

0

0.0

空字符串''或""或'0'或"0",但"0.0"为真

null

空数组

强制转换

临时转换

(变量类型)$变量名称

整型 int/integer

浮点型 float / double / real

字符串型 string

布尔型 bool / boolean

空 unset

数组 array

对象 object

通过系统函数

interval($val)

floatval(

math?formula=val)%20%2F%20doubleval(val)

strval($val)

boolval($val)

注意:临时转换不改变变量本身的类型

永久转换

settype(

math?formula=var%2Ctrpe)——设置变量类型,返回值为布尔型,其意为是否chengg

gettype($var)——返回变量的类型,可能会被移除

通过变量的函数库来检测变量的类型 is_*($var),返回布尔值

is_int() / is_integer() / is_long()

is_float() / is_double() / is_real()

is_string()

is_bool()

is_null()

is_scalar() ——是否为标量类型

is_array()

is_object()

is_resource()

is_numeric() ——是否为数值型或字符串形式的数值型

常量

系统常量

自定义常量

定义常量

5. 1. 1. 1. 1. define()——define($name,$value)

1. 常量名称不加$

2. 常量最好大写

3. 常量默认区分大小写

4. 常量的作用域是全局

5. 常量一经定义,在脚本中执行结束才会被释放

6. 常量的值可以是标量类型,也可以是数组

const 关键字定义 —— const NAME = 值

使用常量

直接使用常量的名称即可

constant($name)——根据常量名取常量的值

检测常量是否存在

defined($name)

获取所有已定义的常量

get_defined_constants()——返回值:包含系统变量和自定义变量的数组

魔术常量

__LIKE__ 当前行号

__FILE__ 当前文件的绝对路径和文件名

__DIR__ 文件的完整路径

__FUNCTION__ 当前的函数名称

__CLASS__ 当前的类名

__METHOD__ 当前的方法名

__TRAIT__ 当前的TRAIT名称

__NAMESPACE__ 当前的命名空间的名称

预定义变量

$globals 超全局变量,包含以下所有的预定义变量

$_SERVERS 服务器和执行环境信息变量

$_ENV 环境变量

$_COOKIE HTTP COOKIES

$_SESSION HTTP SESSIONS

$_FILE 文件上传的信息变量

$_GET HTTP GET变量,主要接受以?形式传递的数据——$_GET['名称']

$_POST HTTP POST变量,主要接受post形式发送的数据——$_POST['名称']

$_REQUESTS $_GET + $_POST + $_COOKIE

运算符

+-*/%

自增自减

注意:

数值型支持

布尔型不支持

null只支持递增,不支持递减

字符串只支持递增,不支持递减

其他

$a<=>$b ——当$a小于,等于,大于$b时,分别返回-1,0,1的integer的值

$a??$b??$c

逻辑运算符()

and 短路

or 短路

xor 异或,不同为真,相同为假

!

&& 短路

|| 短路

错误抑制符 @ 抑制通知错误,但不能抑制语法错误和致命错误

三元运算符

优先级:有短路优先考虑,通过()来改变优先级,不重要

常用函数

mt_rand($min,$max) ——产生随机数

ord($charcter) ——将字符转为ASCII码

chr($ascii) ——将ASCII码转为字符

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值