0是数字,是empty,是false,不是null,值相当于空字符串,但类型不是字符串,去空格或强制转换为字符串型时不等于空字符串

""的值相当于0,是empty,是空字符串,是false,不是null,不是数字字符串

null的值相当于空字符串,值相当于0,是empty,是false,不是字符串,不是数字0

"=="只要值相等就满足条件;  "==="需要两个变量的值和类型都相等;

strval();将变量转换为字符串类型;

intval();将变量转换为整型;

is_numeric();检测变量是否为数字或数字字符串,返回true或false;

  1. // 判断 0 与 ''、null、empty、false 之间的关系
  2. $a = 0;
  3. echo "0 与 ''、 empty、null、false 之间的关系:";
  4.  
  5. if($a == '')
  6. {
  7. echo "0 == '';";
  8. }
  9. else
  10. {
  11. echo "0 != '';";
  12. }
  13.  
  14. if(trim($a) == '')
  15. {
  16. echo "trim(0) == '';";
  17. }
  18. else
  19. {
  20. echo "trim(0) != '';";
  21. }
  22.  
  23. if(strval($a) == '')
  24. {
  25. echo "strval(0) == '';";
  26. }
  27. else
  28. {
  29. echo "strval(0) != '';";
  30. }
  31. //0=='',trim(0)!='',strval(0)!='' 不是空字符串
  32.  
  33. if($a === '')
  34. {
  35. echo "0 === '';";
  36. }
  37. else
  38. {
  39. echo "0 !=== '';";
  40. }
  41. //0!===''
  42.  
  43. if(empty($a))
  44. {
  45. echo "0 is empty;";
  46. }
  47. else
  48. {
  49. echo "0 is not empty;";
  50. }
  51. //0 is empty
  52.  
  53. if(is_null($a))
  54. {
  55. echo "0 is null;";
  56. }
  57. else
  58. {
  59. echo "0 is not null;";
  60. }
  61. //0 is not null
  62.  
  63. if(is_numeric($a))
  64. {
  65. echo "0 is numeric;";
  66. }
  67. else
  68. {
  69. echo "0 is not numeric;";
  70. }
  71. //0 is not numeric
  72.  
  73. if(is_string($a))
  74. {
  75. echo "0 is string;";
  76. }
  77. else
  78. {
  79. echo "0 is not string;";
  80. }
  81. //0 is not string
  82.  
  83. if(!$a)
  84. {
  85. echo "0 is false;";
  86. }
  87. else
  88. {
  89. echo "0 is not false;";
  90. }
  91. //0 is false
  92.  
  93. // 判断 '' 和 0、null、empty、false 之间的关系
  94. $a = '';
  95. echo "'' 和 0、empty、null、false 之间的关系:";
  96. if($a == 0)
  97. {
  98. echo "'' == 0;";
  99. }
  100. else
  101. {
  102. echo "'' != 0;";
  103. }
  104.  
  105. if(intval($a) == 0)
  106. {
  107. echo "intval('') == 0;";
  108. }
  109. else
  110. {
  111. echo "intval('') != 0;";
  112. }
  113.  
  114. if(empty($a))
  115. {
  116. echo "'' is empty;";
  117. }
  118. else
  119. {
  120. echo "'' is not empty;";
  121. }
  122.  
  123. if(is_null($a))
  124. {
  125. echo "'' is null;";
  126. }
  127. else
  128. {
  129. echo "'' is not null;";
  130. }
  131.  
  132. if(is_numeric($a))
  133. {
  134. echo "'' is numeric;";
  135. }
  136. else
  137. {
  138. echo "'' is not numeric;";
  139. }
  140.  
  141. if(is_string($a))
  142. {
  143. echo "'' is string;";
  144. }
  145. else
  146. {
  147. echo "'' is not string;";
  148. }
  149.  
  150. if(!$a)
  151. {
  152. echo "'' is false;";
  153. }
  154. else
  155. {
  156. echo "'' is not false;";
  157. }
  158.  
  159. // 判断 null 和 ''、0、empty、false 之间的关系
  160. $a = null;
  161. echo "null 和 ''、0、empty、false 之间的关系:";
  162. if($a == '')
  163. {
  164. echo "null == '';";
  165. }
  166. else
  167. {
  168. echo "null != '';";
  169. }
  170.  
  171. if($a == 0)
  172. {
  173. echo "null == 0;";
  174. }
  175. else
  176. {
  177. echo "null != 0;";
  178. }
  179.  
  180. if($a === '')
  181. {
  182. echo "null === '';";
  183. }
  184. else
  185. {
  186. echo "null !=== '';";
  187. }
  188.  
  189. if($a === 0)
  190. {
  191. echo "null === 0;";
  192. }
  193. else
  194. {
  195. echo "null !=== 0;";
  196. }
  197.  
  198. if(strval($a) == '')
  199. {
  200. echo "strval(null) == '';";
  201. }
  202. else
  203. {
  204. echo "strval(null) != '';";
  205. }
  206.  
  207. if(intval($a) == 0)
  208. {
  209. echo "intval(null) == 0;";
  210. }
  211. else
  212. {
  213. echo "intval(null) != 0;";
  214. }
  215.  
  216. if(empty($a))
  217. {
  218. echo "null is empty;";
  219. }
  220. else
  221. {
  222. echo "null is not empty;";
  223. }
  224.  
  225. if(is_numeric($a))
  226. {
  227. echo "null is numeric;";
  228. }
  229. else
  230. {
  231. echo "null is not numeric;";
  232. }
  233.  
  234. if(is_string($a))
  235. {
  236. echo "null is string;";
  237. }
  238. else
  239. {
  240. echo "null is not string;";
  241. }
  242.  
  243. if(!$a)
  244. {
  245. echo "null is false;";
  246. }
  247. else
  248. {
  249. echo "null is not false;";
  250. }

PHP 中空字符串介绍0、null、empty和false之间的关系的更多相关文章

  1. PHP中空字符串介绍0、null、empty和false之间的关系

    PHP中空字符串介绍0.null.empty和false之间的关系 作者: 字体:[增加 减小] 类型:转载 时间:2012-09-25   用PHP开发那么久,PHP中空字符串.0.null.emp ...

  2. php 0、null、empty和false之间的关系

    // 判断 0 与 ''.null.empty.false 之间的关系 $a = 0; echo "0 与 ''. empty.null.false 之间的关系:"; if($a ...

  3. php 0,null,empty,空,false,字符串关系(转)

    在php中由于是弱类型语言,不同类型值之间可以隐式转换,使得false,null,”,0,’0′这几个值的比较有些混乱,现总结一下: //相等判断 '' == NULL == 0 == false ( ...

  4. 0,null,empty,空,false,isset

    <?php header("Content-type: text/html; charset=utf-8"); $a=0; //1. if($a==0) { echo $a; ...

  5. PHP中空字符串、0、null、empty和false之间的关系

    原文来自:http://www.seayee.net/article/info_115.html

  6. 关于JavaScript中0、空字符串、'0'是true还是false的总结

    最近被问到关于js中空字符串是true还是false得问题,一时间没想起来,现在在chrome的console面板上输出代码测试一下. "" == false 结果是true    ...

  7. block(代码块)的介绍以及使用方法和变量之间的关系

    http://blog.csdn.net/menxu_work/article/details/8762848 block(代码块)的介绍以及使用方法和变量之间的关系 block(代码块)的介绍以及使 ...

  8. php——字符串的""和null,empty的关系

    public function test(){ $test = ""; if($test==null){ echo "test==null <hr>" ...

  9. 0,null,undefined,[],{},'',false之间的关系

    0与一些虚值的比较: 0与false 0==false true 0与'': =='' true 0与[]: ==[] true 0与NaN: 0==NaN false 0与undefined 0== ...

随机推荐

  1. 嵌入式Linux学习方法——给那些彷徨者(上)

    要想学好嵌入式Linux,首先要解决两个重要问题: 1. 学什么? 2. 怎么学? 首先解决第一个问题. 嵌入式Linux的系统架构包括软件和硬件两个部分,如下图: 再来看看一个成熟的嵌入式产品的开发 ...

  2. Sublime Text3 python代码去除白色框框

    之所以会出现白色框框,是因为代码不符合PEP8规范!!! 可以装一个 AUTOPEP8 插件,然后按 Ctrl + Alt + r 就会自动帮你PEP8格式化,白色框框就会消失了... 这是原来的博文 ...

  3. centos7更改远程端口

    centos7更改远程端口 一.创建个普通账户(useradd work),给普通账户创建密码(password work) 二.查看应有的软件是否安装 1.查看semanager是否安装执行下面命令 ...

  4. Vue scrollBehavior 滚动行为

    使用前端路由,当切换到新路由时,想要页面滚到顶部,或者是保持原先的滚动位置,就像重新加载页面那样. vue-router 能做到,而且更好,它让你可以自定义路由切换时页面如何滚动. 注意: 这个功能只 ...

  5. View Controller Programming Guide for iOS---(七)---Resizing the View Controller’s Views

    Resizing the View Controller’s Views A view controller owns its own view and manages the view’s cont ...

  6. ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 24. Logging

    常用的诊断中间件: UseDeveloperExceptionPage UseStatusCodePages:返回 400~600 的状态码 UseExceptionHandler 自定义异常的处理器 ...

  7. node-- express()模块

    1.代码分析 var express = require('express'); var app = express(); app.get('/', function(req, res){ res.s ...

  8. JAVA基础-面向对象07

    一.代码块 1. 含义: 就是使用大括号括起来的一段代码 格式 { 代码: } 2.静态代码块 格式 static{ 代码: } 书写位置: 直接书写在类中成员位置: 怎么执行呢? 在类加载的最后一步 ...

  9. composer下载tp5第三方扩展

    (谨记:如果使用 composer 命令安装失败,请查看根目录下的 composer.json 文件是否正确,并查看下的扩展是否有多个版本,下载的版本是否符合当前框架的版本) 1.基础 compose ...

  10. Codeforces Round #355 (Div. 2)C - Vanya and Label

    啊啊啊啊啊啊啊,真的是智障了... 这种题目,没有必要纠结来源.只要知道它的结果的导致直接原因?反正这句话就我听的懂吧... ">>"/"&" ...