博客列表 >PHP基础知识----变量、数据类型

PHP基础知识----变量、数据类型

司马青衫
司马青衫原创
2020年07月05日 09:08:20610浏览

PHP 基础

PHP 文档结构

  1. <?php
  2. //php文档的开头
  3. //单行注释
  4. /*
  5. 多行注释
  6. */
  7. //每条语句以 ; 结束
  8. //php文档的结尾 纯php文件可以不写
  9. ?>

PHP 输出操作

  1. <?php
  2. $name = 'simaqingshan';
  3. //1. echo 没有返回值,可以打印多个变量,直接显示,支持输出多种格式(变量、常量、html标签等)
  4. echo 'echo: '.$name,'<br>';
  5. //2. print 有返回值 且始终返回1 只能打印单个变量
  6. echo 'print返回值: '.print 'print: '.$name.'<br>';
  7. echo '<br>';
  8. //3. 输出变量的类型gettype();
  9. echo '变量类型: '.gettype($name).'<br>';
  10. //4. 获取变量的完整信息var_dump();
  11. echo 'var_dump(): ';
  12. var_dump($name);
  13. echo '<br>';
  14. //5. 输出变量的字符串表示
  15. echo '变量$name的字符串表示:'.var_export($name,true);

PHP 变量

  • 变量是临时存储数据的容器
  • 变量是实现数据复用的手段

PHP 变量的命名

  • 变量以\$符开头,其后是变量的名称。
  • 变量名称必须以字母或下划线开头且不能以数字开头。
  • 变量名称只能包含字母数字字符和下划线(A-z 、0-9 以及_)
  • 变量名最好起的有意义 能做到望文生义
  1. <?php
  2. //1. 变量区分大小写
  3. $name = 'user';
  4. $Name = 'admin';
  5. echo $name.'<br>'.$Name.'<br>';
  6. //2. 函数不区分大小写
  7. echo strtoupper($name).'<br>';
  8. echo STRTOupper($name).'<br>';

PHP 变量的类型变化

  • 变量的类型可以随值而变化,也叫变量的动态
  • 赋值可以不用考虑变量类型
  1. <?php
  2. $var = 'aaa';
  3. echo gettype($var).'<br>';
  4. $var = 100;
  5. echo gettype($var).'<br>';

PHP 变量的赋值

  • 分成两种方式
    • 值传递
    • 引用
  1. <?php
  2. //1. 值传递 两个变量不能同步更新
  3. $var1 = 100;
  4. $var2 = $var1;
  5. echo '$var1:'.$var1.'&nbsp;&nbsp;'.'$var2:'.$var2.'<br>';
  6. $var1 = 111;
  7. echo '$var1:'.$var1.'&nbsp;&nbsp;'.'$var2:'.$var2.'<br>';
  8. //2. 引用传递 两个变量同步更新
  9. $var2 = &$var1;
  10. echo '$var1:'.$var1.'&nbsp;&nbsp;'.'$var2:'.$var2.'<br>';
  11. $var1 = 222;
  12. echo '$var1:'.$var1.'&nbsp;&nbsp;'.'$var2:'.$var2.'<br>';

PHP 变量名的动态创建

  • 可以用一个变量的值创建成一个新的变量名 即可变变量
  1. <?php
  2. $name = 'userName';
  3. //动态创建出$userName的变量 赋值成为simaqingshan
  4. $$name = 'simaqingshan';
  5. echo '$name: '.$name.'<br>';
  6. echo '$$name: '.$$name.'<br>';
  7. echo '$userName: '.$userName.'<br>';

PHP 变量的检测与删除

  • isset():如果该变量存在且值不为 null 则返回 true 即变量存在
  • unset():删除变量 没有返回值
  • empty():检测一个变量是否为空
  1. <?php
  2. $name = 'userName';
  3. //输出变量存在的返回值1
  4. echo isset($name).'<br>';
  5. unset($name);
  6. //无返回值输出
  7. echo isset($name).'<br>';
  8. //变量为空 输出1
  9. echo empty($name).'<br>';

PHP 数据类型

  • 分成基本类型 复合类型 特殊类型
  • 基本类型
    • 字符串类型 string
    • 数值类型 int
    • bool 类型 bool
  • 复合类型
    • 对象类型 object
    • 数组类型 array
  • 特殊类型
    • null 类型 NULL
    • 文件句柄 文件资源类型 resource
  1. <?php
  2. //1. 基本类型
  3. $str = 'string';
  4. $num = 100;
  5. $bool = false;
  6. echo var_dump($str).'<br>';
  7. echo var_dump($num).'<br>';
  8. echo var_dump($bool).'<br>';
  9. //2. 复合类型
  10. $obj = new stdClass;
  11. $obj->name = 'sima';
  12. $arr = ['sima',18,180];
  13. echo var_dump($obj).'<br>';
  14. echo var_dump($arr).'<br>';
  15. //3. 特殊类型
  16. $nul = null;
  17. $file = fopen('zy.php','r');
  18. echo var_dump($nul).'<br>';
  19. echo var_dump($file).'<br>';

PHP 变量运算时类型转换

  • PHP 自动进行类型转换

    • 不同类型的数据进行运算处理时会将类型进行转换
    • null false 在算术运算中自动转为 0
    • true 在算术运算中转为 1
  • PHP 强制转换

    • (int)强制转为整数
    • intval():强制转为整数
    • strval():强制转为字符串
    • settype():永久转换 可以转换成任意类型
  1. <?php
  2. //1. 自动类型转化
  3. $nul = null;
  4. $true = true;
  5. $false = false;
  6. echo 10+$nul+$true+$false;
  7. echo '<br>';
  8. //2. 强制类型转换
  9. $str = 'he';
  10. echo gettype((int)$str).'<br>';
  11. echo gettype(intval($str)).'<br>';
  12. echo gettype(strval($true)).'<br>';
  13. settype($true, 'string');
  14. echo gettype($true).'<br>';

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议