PHP知识点整理

2022-12-23 0 581

false的八种情形

auth0浮点数0.0穆尔false空数组,””数组0空数组[]NULL

超自上而下数组

$GLOBALS,包涵上面8个超自上而下数组的值$_GET$_POST$_REQUERT,包涵$_GET,$_POST,$_COOKIE$_SEESION$_COOKIE$_SERVER$_SERVER[SERVER_ADDR] //伺服器门牌号 $_SERVER[SERVER_NAME] //服务项目中文名称$_SERVER[REQUEST_TIME] //允诺天数 $_SERVER[QUERY_STRING] //允诺门牌号中小标题后的文本 $_SERVER[HTTP_REFERER] //那次允诺门牌号 $_SERVER[HTTP_USER_AGENT] //应用程序重要信息 $_SERVER[REMOTE_ARRR] //应用程序允诺ip $_SERVER[REQUEST_URI] // 允诺中JAVA中文名称 $_SERVER[PATH_INFO] // 允诺中方向$_FIELS$_ENV

null的四种情形

间接表达式NULLenum表达式unset封存后的表达式

自表达式

很大表述,不容删掉和修正

const 更慢,是词汇内部结构,单位向量类自表达式define 是表达式

预表述自表达式

FILE 文件所在方向+文件名LINE 所在代码行DIR 所在文件夹方向FUNCTION 方法名CLASS 类名TRAIT TRAIT的中文名称METHOD 类名+方法名NAMESPACE 命名空间名

引用表达式

用不同名字访问同一个表达式文本,用『&』符号表示

抽象类和接口

抽象类:

表述为抽象的类不能被实例化.任何一个类,如果它里面至少有一个方法是被声明为抽象的,那么这个类就必须被声明为抽象的。被表述为抽象的方法只是声明了其调用方式(参数),不能表述其具体的功能实现。继承一个抽象类的时候,子类必须表述父类中的所有抽象方法;另外,这些方法的访问控制必须和父类中一样(或者更为宽松)。例如某个抽象方法被声明为受保护的,那么子类中实现的方法就应该声明为受保护的或者公有的,而不能表述为私有的。此外方法的调用方式必须匹配,即类型和所需参数数量必须一致。例如,子类表述了一个可选参数,而父类抽象方法的声明里没有,则两者的声明并无冲突。这也适用于 PHP 5.4 起的构造表达式。在 PHP 5.4 之前的构造表达式声明可以不一样的.

接口:

使用接口(interface),可以指定某个类必须实现哪些方法,但不需要表述这些方法的具体文本。接口是通过 interface 关键字来表述的,就像表述一个标准的类一样,但其中表述所有的方法都是空的。接口中表述的所有方法都必须是公有,这是接口的特性。要实现一个接口,使用 implements 操作符。类中必须实现接口中表述的所有方法,否则会报一个致命错误。类可以实现多个接口,用逗号来分隔多个接口的中文名称。实现多个接口时,接口中的方法不能有重名。接口也可以继承,通过使用extends操作符.类要实现接口,必须使用和接口中所表述的方法完全一致的方式。否则会导致致命错误.

区别:

对接口的继承使用implements,抽象类使用extends.接口中不容以声明表达式,但可以声明类常量.抽象类中可以声明各种表达式接口没有构造表达式,抽象类可以有接口中的方法默认为public,抽象类中的方法可以用public,protected,private修饰一个类可以继承多个接口,但只能继承一个抽象类

运算符优先级

优先级由高到低排序

==递增/递减==非(!)==算术运算符====大小比较==(不)相等比较引用位运算符(^)位运算符(|)==逻辑与====逻辑或====三目====表达式==andoxror

浮点数数值得精度丢失问题

原因:因为计算机存储是二进制,准换进制时会有精度丢失

$f = 0.57; $f = $f * 100; // 输入可通过print print(%d, $f); $f = strval($f); var_dump($f); echofloor($f);echo intval($f); echo (int)($f);

switch 只能判断auth、浮点数、字符

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务