关于php的0,'',false,null引发的空字符串和空格的空字符串的思考

关于php的0,空字符串,false,null引发的空字符串和空格的空字符串的思考,今天在业务开发中遇到一个有点意思的问题,在仔细思考下发现了很有意思的点,接下来出题

  1. <?php
  2. $a = "";
  3. $b = " ";
  4. $c=trim($b);
  5. if($a==$b){
  6. var_dump('===');
  7. }else{
  8. var_dump("!=");
  9. }
  10. echo '<br>';
  11. if($a==$c){
  12. var_dump('===');
  13. }else{
  14. var_dump("!=");
  15. }
  16. ?>

以上为实例,不知道大家在初次遇到这个问题会怎么处理,是否会先入为主,而导致你业务出错,浪费宝贵时间。
以下为输出结果
eg:

  1. string(2) "!="
  2. string(3) "==="

我在没有仔细考虑这个问题的时候,一直认为,””、” “的区别,在肉眼上看,这个2个好像都是空字符串,可代码会告诉你,不,他们不一样,但是一定等你仔细看的时候,你一定就会发现,其中一个是因为多了一个空格,而在计算机的时间里,空格也是占用内存空间的,自然在语言处理中,也会进行区别对待。

所以任何事情都不能想当然,眼见不一定为实,一定要多思考,和实践。以下引用一下伟大领袖毛主席的话。

实践才是检验真理的唯一标准—-毛泽东

点赞 ( 0 )

0 条评论

发表评论

人生在世,错别字在所难免,无需纠正。

插入图片
s
返回顶部