php面试题

3.数据类型

2017-12-22  本文已影响10人  漏诺

php字符串可以使用哪三种方式定义,以及各自的区别是什么?

定义方式

单引号

双引号

herdoc与newdoc

区别

单引号不能解析变量

单引号不能解析转义字符,只能解析单引号和反斜线本身

变量和变量,变量和字符串,字符串和字符串之间可以用.连接

双引号可以解析变量,变量可以使用特殊符号{}包含

双引号可以解析所有转义字符

也可以使用.来连接

单引号效率更高

heredoc类似于双引号

Newdoc类似于单引号

两者都用来处理大文本

heredoc

$str=<<

......

EoT

newdoc

$str=<<<’EoT’

......

EoT

数据类型

三大数据类型(标量,复合,特殊)

浮点类型

浮点类型不能用于比较运算中

$a=0.1;

$b=0.7;

If($a+$b==0.8){

False=0.7999

}

因为浮点型相加会转换为二进制,消耗内存。所以返回false

布尔类型

False的7种情况

0,0.0,’’,’0’,false,array(),NULL

整型0,浮点0,布尔false,空字符串,0字符串,空数组,NULL

数组类型

超全局数据

$GLOBALS,$_GET,$_POST,$_REQUEST,$_SESSION,$_COOKIE,$_SERVER,$_FILES,$_ENV

注意:

$GLOBALS包含后面所有的内容

$_REQUEST包含$_GET,$_POST,$_COOKIE

$_REQUEST尽量少用,相当于万能钥匙,安全性低

$_SERVER[SERVER_ADDR] 服务器ip

$_SERVER[‘SERVER_NAME’] 服务器名称

$_SERVER[‘REQUEST_TIME’]启动时间

$_SERVER[‘QUERY_STRING’] 问号后面的一大串,有可能为空

$_SERVER[‘HTTP_REFERER’]上级请求的页面,可能为空,用于开发

$_SERVER[‘HTTP_USER_AGENT’]头信息中的USER_AGENT信息

$_SERVER[REMOTE_ADDR] 客户端ip

$_SERVER[‘REQUEST_URI’]请求index.php,URI就是/index.php

$_SERVER[‘PATH_INFO’]处理路由,抓url地址中路径的部分

NULL

三种情况

直接赋值为NULL,未定义的变量,unset销毁的变量

常量

定义:

const 语言结构

define 函数

const更快,是语言结构,define是函数

define不能用于类常量的定义,const可以

常量一经定义,不能被修改,不能被删除

预定义常量(php系统中)

__FILE__ 所在文件的文件路径和文件名称

__LINE__ 所在行的行号

__DIR__ 所在目录

__FUNCTION__ 所在函数体的函数名称

__CLASS__ 类名

__TRAIT__ 5.4的特性,trait的名称

__METHOD__ 返回类名+方法名

__NAMESPACE__ 返回NAMESPACE名称

题目

用PHP写出显示客户端IP与服务器IP的代码

__FILE__表示什么意思

��vĜ����

上一篇下一篇

猜你喜欢

热点阅读