Blogger Information
Blog 22
fans 1
comment 0
visits 17755
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
第十期PHP基础知识数据变量定义及输出(2020-01-03)
齐齐
Original
1062 people have browsed it

PHP数据类型分为基本类型(数值、字符串、布尔型),复合类型(数组、对象),特殊类型(资源、null)三种类型。

1.PHP数据类型基本类型数值,字符串,布尔型

1.1数值类型是变量值为整数或者小数

  1. $age=30;
  2. //获取数据值的类型为int,值为30
  3. echo var_dump($age);

php运行结果

1.2字符串必须被定界符包装:单引号和双引号。单引号中放入纯字符,双引号可以解析变量和识别特殊字符。

  1. $name="qiqi";
  2. //单引号中变量无法被解析
  3. echo '我是$name';
  4. echo '<hr>';
  5. //双引号中变量正常解析
  6. echo "我是$name";
  7. echo '<hr>';
  8. //获取数据值的类型为string,字节长度和值
  9. var_dump($name);

php运行结果

1.3布尔值只有2个值:true,false

  1. $isqiqi=true;
  2. //获取数据值的类型为bool,值为true
  3. var_dump($isqiqi);

php运行结果

2.复合类型数组

  1. //通过range函数快速生成一个数组,从1到50,以3递增的数组
  2. $shuzu=range(1,50,3);
  3. //用echo来输出,只能输出数据类型,不能看到数值内的元素
  4. echo $shuzu;
  5. echo '<hr>';
  6. //用print来输出,也是输出数据类型,不能看到数值内的元素
  7. print $shuzu;
  8. echo '<hr>';
  9. //用print_r来输出这个数组
  10. print_r($shuzu);
  11. echo '<hr>';
  12. //print_r支持第二个参数,不输出,有返回的值。可以用一个变量来接收
  13. $jieguo=print_r($shuzu,true);
  14. echo $jieguo;
  15. echo '<hr>';
  16. //返回值为一个字符串类型,不是数组
  17. echo gettype($jieguo);
  18. echo '<hr>';
  19. //也可以直接用echo来输出,不用变量来接收.加入pre来格式化输出显示
  20. echo '<pre>'.print_r($shuzu,true).'</pre>';
  21. echo '<hr>';
  22. //var_export可以直接查看到数组内的元素和值
  23. var_export($shuzu);
  24. //用pre标签来实现数组格式化显示,无效
  25. echo '<pre>'.var_export($shuzu).'</pre>';
  26. echo '<hr>';
  27. //var_export支持第二个参数,不输出,有返回的值。直接无法查看,需要一个变量接收
  28. var_export($shuzu,true);
  29. $jg=var_export($shuzu,true);
  30. echo $jg;
  31. //在加入第二个参数后,per标签格式化显示有效果
  32. echo '<pre>'.$jg.'</pre>';
  33. echo '<hr>';
  34. //返回值为一个字符串类型,不是数组
  35. echo gettype($jg);
  36. echo '<hr>';
  37. //var_dump输出字符串,可查看详细信息
  38. var_dump($shuzu);

php运行结果

3.大段的字符串的输出

3.1 heredoc类似双引号定义的字符串,能识别变量和不可见字符(特殊字符)。

  1. $age=30;
  2. $name="qiqi";
  3. echo <<< qq
  4. <!--在姓名和年龄和后面的文字都没有间距,在加入特殊字数后,有个间隙-->
  5. 我是“{$name}”\t今年$age\t你信不信我说的话?随便你<hr>
  6. <!--如果变量后紧靠有其他字母、单词、中文,加上花括号后,变量能正常解析-->
  7. 我真的{$name}哟
  8. qq;

php运行结果

3.2 nowdoc类似单引号定义的字符串,不能识别变量和不可见字符(特殊字符)

  1. $age=30;
  2. $name="qiqi";
  3. echo <<< 'qq'
  4. 我是“{$name}”\t今年$age\t你信不信我说的话?随便你<hr>
  5. 我真的{$name}哟
  6. qq;

php运行结果

4.总结

4.1 php属于弱语音,和其他的编程语言不同的是:变量不需要申明就能直接用。

4.2 php数据类型,是指变量对应值的类型。并不是变量名的类型。

4.3 双引号定义的字符串中,包含双引号需加入转义符(\)。单引号定义的字符串中,有单引号也要加入转义符。

4.4 php大段字符串的输出,heredocnowdoc。在用法上,很容易混淆。两者的区别在于,标识符未被双引号和单页号包裹,可以理解为隐形包裹双引号,只是看不见而已。双引号是属于heredoc,类似双引号定义字符串,能够正确解析变量和不可见特殊字符。包含双引号,不用转义符。单引号是nowdoc,只能存放纯字符串,有单引号也同样不用上加转义符。

4.5 变量的输出和打印最常用的echovar_dump()print_r()var_export()都支持第二个参数,不输出有返回值并且都为字符串类型(string)。

4.6 gettype()var_dump()都能查询数据类型,后者显示的信息更加全面。

Correcting teacher:天蓬老师天蓬老师

Correction status:qualified

Teacher's comments:写得不错
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post