引言

先用一个题来作为开端:PHP字符串的三种定义方式是什么?有什么区别?

它们分别是单引号'',双引号"",newdoc和heredoc。

区别是:单引号不能解析变量,不能解析转义字符,只能解析单引号和反斜线本身。

双引号可以 解析变量,可以解析所有的转义字符。

由此可见单引号的效率要高于双引号。在我们进行SQL语句的书写时可以利用这一点:

$sql = "sellect * from user where name = '$name'";//原SQL语句
$sql = 'sellect * from user where name =\''.$name.'\'';//这样效率会高一点,并且可读性也高一些
    而heredoc类似于双引号,newdoc类似于单引号,两者都用来处理大文本
heredoc:  $str = <<< EoT
........//里面的变量和转义字符会被解析
EoT
newdoc:$str = <<< 'EoT'
........
EoT

数据类型

三大数据类型:标量(布尔、字符串、整型、浮点型)、复合(数组、对象)、特殊(资源、NULL)。

标量中注意:浮点类型,它不能用于比较运算中,不要直接判断两个浮点类型的数值是否相等。

bool类型,false的七种情况:0、0.0、''、'0'、false、array()、null。

复合中注意:数组类型,超全局数组:$GLOBALS、$_GET $_POST $_REQUEST $_SESSION $_COOKIE $SERVER $_FILES $ENV,其中$GLOBALS包含了后面的所有内容,$_REQUEST包含了$POST $_GET $_COOKIE的内容,这里再着重讲解一些$_SERVER:

$_REQUEST['SERVER_ADDR']//服务器端IP

$_REQUEST['SERVER_NAME']//服务器名称

$_REQUEST['REQUEST_TIME']//请求时间

$_REQUEST['QUERY_STRING']//网址?后面的内容

$_REQUEST['HTTP_REFERER']//上级请求的页面

$_REQUEST['REMOTE_ADDR']//客户端IP

$_REQUEST['REQUEST_URI']//请求的index.php,返回的是/index.php

$REQUEST['PATH_INFO']//网址的路径部分

特殊中注意:NULL的三种情况:直接赋值为NULL、未定义的变量、unset销毁的变量。

常量

定义方式:const、define

const是结构,define是函数,const更快。

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

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

预定义常量:FILE LINE -DIR
FUNCTION METHOD CLASS TRAIT NAMESPACE

最新文章

  1. SharePoint 2013 图文开发系列之Visual Studio 创建母版页
  2. c# json TO xml
  3. Java_动态加载
  4. pagemap, from the userspace perspective
  5. Memcache的总结介绍和一些命令的总结
  6. Redis源码研究--字典
  7. Word图片版式设置问题
  8. 单源最短路径-Dijkstra算法
  9. [hihoCoder]#1039 : 字符消除
  10. 【转载】Android设计中的.9.png
  11. 这难道是CSDN的BUG? 大家帮忙看看哪里有问题
  12. myeclipse跟eclipse中使用github做版本控制工具
  13. canvas生成遮罩图片
  14. JSP(二)
  15. noip 2016 提高组总结(不是题解)
  16. 将下载的本地的jar手动添加到maven仓库
  17. this的四种用法
  18. shell脚本登录数据库
  19. Arch Linux下Visual Stdio Code在格式化C代码时报错
  20. Javascript 中调参数的脚本onclick=&quot;select(this)&quot; this 怎么解释

热门文章

  1. Element upload组件上传图片与回显图片
  2. 再谈 PHP 未来之路
  3. D. Beautiful Array DP
  4. STM32 时钟树配置快速入门
  5. Git使用教程之新手也能看懂(一)
  6. Sharding JDBC整合SpringBoot 2.x 和 MyBatis Plus 进行分库分表
  7. AXI总线slave模式下接收数据---verilog代码
  8. WIn7系统下配置Java环境变量
  9. Js调用Android回调处理
  10. 一分钟掌握MySQL的InnoDB引擎B+树索引