php常量及数据类型

1、php中的字符串可以使用的三种定义方法及其区别:

定义方式:单引号,双引号,heredoc和newdoc

区别:

 (1)单引号不能解析变量

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

 (3)单引号效率更高

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

 (5)双引号可以使用特殊字符和 { } 包含

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

<?php
header("content-type:text/html;charset=utf-8");
$a = 1;
$str = 'abcdeg$ag';
echo $str;            //输出结果:abcdeg$ag
echo "</br>";
$str ="abcdeg{$a}g";
echo $str;            //输出结果:abcdeg1g

我们在写sql语句时,经常会用到引号

$sql = "SELECT * FROM user WHERE name = '$name'";
$sql = 'SELECT * FROM user WHERE name = \' '.$name.'\'';//为了提高效率,会用到单引号

Heredoc 结构就像是没有使用双引号的双引号字符串,这就是说在 heredoc 结构中单引号不用被转义。其结构中的变量将被替换,但在 heredoc 结构中含有复杂的变量时要格外小心。其对格式化输出内容时,比较有用 。具体其有以下特点:

(1)开始标记和结束标记使用相同的字符串,通常以大写字母EOT来写。

(2)开始标记后不能出现空格或多余的字符。

(3)结束标记必须顶头写,不能有缩进和空格,且在结束标记末尾要有分号 。

(4)位于开始标记和结束标记之间的变量可以被正常解析,但是函数则不可以。在heredoc中,变量不需要用连接符.,来拼接 。

例:

$name='小林子';
$content=<<<EOF

    {$name}奋斗的点滴!!! 

EOF;
echo $content;        //输出结果:小林子奋斗的点滴!!!

 

在 PHP 5.3.0 及其以后的版本中增加了nowdoc结构,其用法和heredoc相同,不同的是Nowdoc 结构是类似于单引号字符串的。nowdoc 中不进行解析操作。这种结构很适合用于嵌入 PHP 代码或其它大段文本而无需对其中的特殊字符进行转义。

一个 nowdoc 结构也用和 heredoc结构一样的标记 <<<, 但是跟在后面的标识符要用单引号括起来,即 <<<'EOT'。

例:

$name='小林子';
$content=<<<'EOF'
    {$name}奋斗的点滴!!! 
EOF;
echo $content;     //输出:{$name}奋斗的点滴!!!

 

2、三大数据类型

(1)浮点类型:浮点类型不能用于比较运算中

(2)布尔类型:

  FALSE的七种情况:0,0.0,‘’,‘0’,flase,array(),null

(3)数组类型:

  超全局数组:  

  $_GET[]   获得以GET方法提交的变量数组

  $_POST[]  获得以POST方法提交的变量数组

  $_COOKIE[] 获取和设置当前网站的Cookie标识

  $_SESSION[] 取得当前用户访问的唯一标识,以数组形式体现,如sessionid以及自定义session数据

  $_ENV[] 当前php环境变量数组

  $_SERVER[] 当前php服务器变量数组

  $_FILES[] 上传文件时提交到当前脚本的参数值,以数组形式体现

  $_REQUEST[] 包含当前脚本提交的全部请求,$_GET、$_POST、$_COOKIE的所有动作

  $GLOBALS[] 包含正在执行脚本所有超级全局变量的引用内容

       $_SERVER[] 是一个包含了诸如头信息(header)、路径(path)、以及脚本位置(script locations)等等信息的数组。

    ① $_SERVER['HTTP_HOST']  请求头信息中的Host内容,获取当前域名。

    ② $_SERVER["SERVER_NAME"]  输出配置文件httpd.conf中的ServerName,一般情况下与HTTP_HOST值相同。

    ③ $_SERVER["HTTP_USER_AGENT"]  获取用户相关信息,包括用户浏览器、操作系统等信息。

    ④ $_SERVER["HTTP_COOKIE"]  浏览器的cookie信息

    ⑤ $_SERVER["PATH"]  当前脚本所在文件系统。

    ⑥ $_SERVER["SERVER_ADDR"]  当前运行脚本的服务器的ip地址。

    ⑦ $_SERVER["SERVER_PORT"]  服务器端口。

    ⑧ $_SERVER["REMOTE_ADDR"]  浏览网页的用户ip。

    ⑨ $_SERVER["DOCUMENT_ROOT"]  当前运行脚本所在的根目录。

    ⑩ $_SERVER["SCRIPT_FILENAME"]  当前执行脚本的绝对路径。

    ⑪ $_SERVER ["REMOTE_PORT"]  用户连接到服务器时所使用的端口。

    ⑫ $_SERVER["REQUEST_METHOD"]  请求提交数据的方式。

    ⑬ $_SERVER["QUERY_STRING"]  服务器请求时?后面的参数。

    ⑭ $_SERVER["REQUEST_URI"]  当前脚本路径,根目录之后的目录。

    ⑮ $_SERVER["SCRIPT_NAME"]  当前脚本的路径。这在页面需要指向自己时非常有用。

    ⑯ $_SERVER["PHP_SELF"]  当前正在执行脚本的文件名。

    ⑰ $_SERVER["REQUEST_TIME"]  得到请求开始时的时间戳。

(4)NULL的三种情况:

  ① 直接赋值为null

  ② 未定义变量

  ③ unset()销毁的变量

(5)常量

  定义方式:const、define

  const更快,是语言结构,define是函数,同时,define不能用于类常量的定义,而const可以。

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

  预定义常量:

    __FILE__  当前PHP程序脚本的绝对路径及文件名称

    __LINE__ 存储该常量所在的行号

    __DIR__  当前PHP程序脚本的目录

    __FUNCTION__  存储该常量所在的函数名称

    __CLASS__  存储该常量所在的类的名称

    __METHOD__ 存储该常量所在的类的方法的名称

    __NAMESPACE__ namespace名称

转载于:https://www.cnblogs.com/xlzfdddd/p/9893486.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值