博客列表 >php基础-打印输出、定义变量、变量的值类型

php基础-打印输出、定义变量、变量的值类型

岂几岂几
岂几岂几原创
2020年04月17日 16:50:103310浏览

PHP基础

1. php打印结果

序号 指令 描述
1 echo 语言结构, 可查看多个变量
2 print 语言结构,功能与echo类似,区别是有返回值
3 print_r() 函数,以更容易理解的格式打印变量信息,常用于数组
4 var_dump() 函数,可查看一个变量更多信息,如类型
5 var_export() 函数,输出或返回一个变量的字符串表示(源代码)

实际工作中, echovar_dump()基本可以满足大多数需求;

  1. <?php
  2. # 直接打印结果
  3. echo '我爱php';
  4. # 不直接打印,返回字符串(后面的true参数)
  5. echo print_r(['张三', '李四'], true);
  6. ?>

2. 变量

2.1 变量命名规范

  • php中, 变量名区分大小写(注意, 函数不区分大小写)
  • php中, 正确的变量名必须使用$作为起始符号
  • php中, 变量名不能以数字开始
  • php中, 变量名中不能有特殊符号
  • php有效标识符: 必须由以下3种字符组成: 大小写英文字母, 下划线, 数字. 且不能以数字开始.
    变量命名示例:
  1. <?php
  2. // php的变量
  3. # 变量命名
  4. ## php中, 变量名区分大小写(注意, 函数不区分大小写)
  5. $username = 'admin';
  6. $userName = 'peter';
  7. echo $username, '<br>', $userName, '<br>';
  8. ## php中, 正确的变量必须使用$作为起始符号
  9. // hello = 'php'; // 这是错误的
  10. ## php中, 变量名不能以数字开始
  11. // 123abc = 'php';
  12. ## php中, 变量名中不能有特殊符号
  13. //$user@id = 100;
  14. ## php有效标识符: 必须由以下3种字符组成: 大小写英文字母, 下划线, 数字. 且不能以数字开始.

2.2 传统php变量是弱类型

  • php的变量类型是随值变化而变化的, 值是什么类型, 变量就是什么类型.
    1. $var = 100;
    2. var_dump($var);
    3. $var = "hello";
    4. var_dump($var);

2.3 变量数据的传递方式

  1. 值传递:相当于声明两个变量,只是这两个变量的值相等而已。
  2. 引用传递:相当于两个标签指向同一个值。
  • 所有复合类型(如, 数组, 对象, 文件等)都是引用

变量值传递示例:

  1. <?php
  2. # 变量数据的传递方式
  3. ## 1.值传递
  4. $price1 = 99;
  5. $price2 = $price1;
  6. echo 'price1 = ', $price1, '; price2 = ', $price2, '<br>';
  7. /* 修改$price1的值, 但$price2的值不变 */
  8. $price1 = 100;
  9. echo 'price1 = ', $price1, '; price2 = ', $price2;
  10. echo '<hr>';
  11. ## 2.引用传递
  12. $price1 = 99;
  13. // 引用方式赋值. 其中: &叫取地址符.
  14. $price2 = &$price1;
  15. echo 'price1 = ', $price1, '; price2 = ', $price2, '<br>';
  16. /* 修改$price1的值, 但$price2的值会跟着变 */
  17. $price1 = 100;
  18. echo 'price1 = ', $price1, '; price2 = ', $price2;

2.3 可变变量

  • 个人理解,就是可以通过值为另一个变量名的变量,获取另一个变量的值。

可变变量示例:

  1. # 动态输出学生姓名
  2. $stu1 = '张三';
  3. $stu2 = '李四';
  4. $stu = 'stu1';
  5. // 会输出“张三”
  6. echo $$stu . '<br>';
  7. $stu = 'stu2';
  8. // 会输出“李四”;
  9. echo $$ stu . '<br>';
  10. # N层嵌套
  11. $a1 = 'hello, php!';
  12. $a2 = 'a1';
  13. $a3 = 'a2';
  14. $a4 = 'a3';
  15. echo $$$$a4 . '<br>';

2.4 检测与删除变量

  • 使用isset()函数判断某个变量是否已定义
  • 使用unset()函数删除/销毁某个已定义的变量
  • 已定义但未初始化的变量,它的初始值为NULL。用is_null()判断
  • 空值, 如:null值, 空字符串””, 空数组[], 用empty()判断
    相关示例:
  1. <?php
  2. function check($param) {
  3. if(isset($param)) {
  4. echo '已定义,值为:' . $param;
  5. } else {
  6. echo '未定义';
  7. }
  8. echo '<br>';
  9. }
  10. # 检测变量
  11. $stu1 = '张三';
  12. check($stu1);
  13. check($stu2);
  14. # 删除/销毁变量
  15. $stu = '张三';
  16. check($stu);
  17. unset($stu);
  18. check($stu);
  19. # 判断NULL值
  20. $param;
  21. if(is_null($param)) {
  22. echo '$param的值为NULL<br>';
  23. }
  24. # 判断空值
  25. function check1($param) {
  26. if(empty($param)) {
  27. echo '该变量的值是空值<br>';
  28. }
  29. }
  30. $param1;
  31. check1($param1);
  32. $param1 = '';
  33. check1($param1);
  34. $param1 = [];
  35. check1($param1);

2.5 php中的数据类型

1. 基本类型

  • 字符串(string)
  • 数值类型(int, float),int为整数;float为小数
  • 布尔类型(boolean)

基本类型示例:

  1. // 字符串(string)
  2. $name = 'grantkai';
  3. // 数值类型(int, float)
  4. $price = 999;
  5. $pi = 3.1415926
  6. // 布尔类型(boolean)
  7. $is5G = true;

2. 复合类型(将基本类型进行整合)

  • 对象
  • 数组

复合类型示例:

  1. // 对象
  2. $obj = new stdClass;
  3. $obj->email = 'admin@php.cn';
  4. echo $obj->email, '<br>';
  5. // 数组
  6. $arr = ['computer', 8000, '华为'];
  7. echo '<pre>';
  8. var_dump($arr);
  9. echo '</pre>';

3. 特殊类型

  • null值
  • 资源类型,如:文件等
  1. // null值
  2. $num = null;
  3. var_dump($num);
  4. echo '<br>';
  5. // 资源类型, 如: 文件等
  6. $f = fopen('demo7.php', 'r');
  7. var_dump($f);
  8. echo '<br>';
  9. // 判断文件类型
  10. if (gettype($f) === 'resource') {
  11. echo 'demo7.php是一个文件';
  12. }
  13. echo "<br>";
  14. ## tips: 获取变量的数据类型
  15. echo gettype($f);

tips: 使用gettype()函数获取变量的类型名称

学习心得

  • 打印输出,一般是指把变量值带格式/不带格式的输出到浏览器中
  • 变量就是一个标签,可以指向不同的值,当它指向某个值时,可以在不同地方使用标签来获取这个值。当它不指向任何值时,相当于指向一个叫NULL的值。当它指向NULL值、””空字符串、[]空数组时,都称为指向空值。
  • 变量的值分基本类型(字符串、数字和布尔)、特殊类型(NULL值,资源类型)和复合类型(对象、数组)三种。
上一条:PHP基础语法二下一条:php基本语法一
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议