数据类型:

临时转化的样式代码:

  1. <?php
  2. // 临时转换: 用户 并不会改变数据的原始类型
  3. $id = $_GET['id'];
  4. var_dump($id);
  5. // id应该是整数才方便运算,url中的内容全部默认是字符串
  6. // 转换到整数
  7. $id = (int)$id;
  8. if ($id === 3) {
  9. echo '接收成功';
  10. }
  11. echo '<br>';
  12. // 转为浮点数
  13. $n = 1212;
  14. var_dump($n, (string)$n,(float)$n) ;
  15. echo '<hr>';
  16. // 数组
  17. var_dump((array)$n,((array)$n)[0]);
  18. echo '<hr>';
  19. // 字符串转数组意义不大
  20. $str = 'PHP';
  21. echo $str[0],$str[1], $str[2], '<br>';
  22. // 字符串转对象
  23. var_dump((object)$str,((object)$str)->scalar);
  24. echo '<hr>';
  25. // 原始类型
  26. var_dump($str);

效果预览:

自动转换: 系统

样式代码:

  1. <?php
  2. // 每一种操作符,它要求的操作数类型是固定的,如果不满足就自动转换
  3. echo 123 + '456';
  4. echo '<br>';
  5. // "+"要求参与计算的数据都是数值类型,如果不是,就是会触发自动转换
  6. echo 123 + (int)'456';
  7. echo '<hr>';
  8. echo 123 + 'php456';
  9. echo '<br>';
  10. echo (int)'php456';
  11. echo '<hr>';
  12. echo 123 + '456php';
  13. echo '<hr>';
  14. // ".", 希望二边都是字符串,如果不是就转换 字符串拼接
  15. echo 'php' . 123 . '<hr>';
  16. // 最常用的是布尔转换
  17. if (!$email) echo '未定义邮箱';
  18. echo '<br>';
  19. // $email 未定义,NULL
  20. var_dump($email);
  21. echo '<br>';
  22. // null ==> false
  23. echo var_export((bool)null);
  24. echo '<hr>';
  25. if (!isset($email)) echo '未定义邮箱';

效果预览:

永久转换: 只针对变量

样式代码:

  1. <?php
  2. $price = 124;
  3. // 整数类型
  4. echo gettype($price), '<br>';
  5. // 转为字符串
  6. echo gettype((string)$price), '<br>';
  7. // 原始类型
  8. echo gettype($price), '<hr>';
  9. // 永久转换
  10. // 第一个参数要转换的变量,第二个转换的类型
  11. settype($price, 'string');
  12. echo gettype($price), '<br>';

效果预览:

类型检测:

  1. // 类型检测
  2. $pst = 'A, 0, 1';
  3. $olt = ['A', 0, 1];
  4. $obj = (object)$olt;
  5. // 检测$pst是数字
  6. echo '$pst: is_numeric = ', var_export(is_numeric($pst), true), '<br />';
  7. // 检测$pst是整数
  8. echo '$pst: is_int = ', var_export(is_int($pst), true), '<br />';
  9. // 检测$pst是字符串
  10. echo '$pst: is_string = ', var_export(is_string($pst), true), '<br />';
  11. // 检测$pst是布尔
  12. echo '$pst: is_bool = ', var_export(is_bool($pst), true), '<br />';
  13. // 检测$olt是数组
  14. echo '$olt: is_array = ', var_export(is_array($olt), true), '<br />';
  15. // 检测$obj是对象
  16. echo '$obj: is_object = ', var_export(is_object($obj), true), '<br />';
  17. // 检测$obj是null
  18. echo '$obj: is_null = ', var_export(is_null($obj), true), '<br />';
  19. // $obj是资源
  20. echo '$obj: is_resource = ', var_export(is_resource($obj), true), '<br />';
  21. // $obj是标量
  22. echo '$obj: is_scalar = ', var_export(is_scalar($obj), true), '<br />';

效果预览:

变量与常量的方式:

  1. 变量就是代码中需要暂存的数据,变量按名访问,变量名必须是一个合法的标识符,仅允许使用: 英文字母(a-z,A-Z),数字(0-9),下划线(_),禁止使用数字开头
  2. 标识符有二类: 预定义的: 保留字, 关键字
  3. 变量必须要用"$"为前缀,严格区分大小写

样式代码:

  1. // 1. 驼峰式 变量,对象的属性和方法
  2. $userName = '豪宅';
  3. $username = '别墅';
  4. echo $userName, ', ', $username, '<br>';
  5. // 2. 蛇形: set_public(),函数
  6. function setPublic($ev)
  7. {
  8. return 'Hello ysqsm ' . $ev;
  9. }
  10. echo setPublic('休息'),'<br>';
  11. // 3. 帕斯卡: UserModel, 类,与驼峰式很像,所以也叫: 大驼峰
  12. $SanHai = '上海';
  13. $BeiJin = '北京';
  14. echo $SanHai ,', ', $BeiJin, '<br>';
  15. //全大写: 常量
  16. // const: 关键字 声明常量
  17. const FIGURE = "小姐姐";
  18. const XINBIE = "女";
  19. printf('姓名: %s, 性别: %s<br>', FIGURE, XINBIE);
  20. echo '<br>';
  21. // define()创建常量
  22. function a() {
  23. define('ZSHY', 'Hello world (^_^)/早上好');
  24. }
  25. a();
  26. echo ZSHY , '<br>';
  27. if (true) {
  28. define('PAONIU', '泡妞了作业补全了没');
  29. }
  30. echo PAONIU;

效果预览:

更多相关文章

  1. PHP初级知识本地搭建和常用标签类型
  2. 数值运算常用途径;字符串拼接注意事项;流程控制语句与导入外部文件
  3. PHP基础知识:变量类型检测和转换以及常量和预定义变量
  4. php数据类型转换及变量与常量的差别
  5. 数据类型的转换与检测技术 、变量声明与常用声明的方式与使用
  6. 数据类型转换的一般操作与检测正确性,变量常量定义及操作注意事项
  7. php学习笔记(数据类型的转换、数据类型的检测、变量和常量的相关
  8. PHP 数据类型的转换与检测|变量声明方式与使用|常量声明的方式与
  9. 数据类型的转换与检测、变量声明与常用声明的使用方式

随机推荐

  1. Hibernate不尊重MySQL auto_increment主
  2. 关于Mysql的图形化管理工具sqlyog的注册
  3. Laravel和PHP:返回特殊格式的JSON
  4. mysql大表更新sql的优化策略(转)
  5. mysql 5.5 zip配置安装
  6. mysql数据库utf-8编码
  7. 机智的MySQL优化器 --- is null
  8. 我需要PHP页面显示mysql数据库中的BLOB图
  9. 利用Intellij+MAVEN搭建Spring+Mybatis+M
  10. MySQL、JDBC安装以及用java连接