博主信息
博文 47
粉丝 3
评论 0
访问量 50719
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
数据类型的转换与检测、变量声明与常用声明的使用方式
原创
750人浏览过

1. 数据类型的转换与检测

1.1 数据类型的转换
  • 临时转换

  1. <?php
  2. // 1.临时转换
  3. // 地址栏传参:?id=123
  4. $id = $_GET['id'];
  5. // url中获取的内容全部默认为字符串
  6. var_dump($id);
  7. // 使用(int)转为整数
  8. $id = (int)$id;
  9. echo gettype($id);
  10. echo '<hr>';
  11. $b = 123;
  12. // 使用(string)转为字符串
  13. var_dump($b,(string)$b);
  14. echo '<hr>';
  15. // 使用(float)转为浮点数
  16. var_dump($b,(float)$b);
  17. echo '<hr>';
  18. // 使用(array)转为数组
  19. var_dump($b,(array)$b);
  20. echo '<hr>';
  21. // 使用(object)转为对象
  22. var_dump($b,(object)$b);
  23. ?>
  • 系统自动转换

  1. <?php
  2. // 自动转换
  3. echo 123 + '478';
  4. // 等价于
  5. // 数值自动转换(int)
  6. echo 123 + (int)'478';
  7. echo '<br>';
  8. // 字符串自动转换
  9. echo 'php' . 123 . '<br>';
  10. // // 等价于
  11. echo 'php' . (string)123 . '<br>';
  12. // 布尔转换
  13. if (!isset($email)) echo '未定义邮箱';
  14. ?>
  • 永久转换

  1. <?php
  2. $price = 888;
  3. // // 永久转换
  4. settype($price,'string');
  5. // 返回string
  6. echo gettype($price);
  7. ?>
1.2 数据类型的检测

  1. <?php
  2. // is_numeric()检测参数是否数值或数值型字符串
  3. function sum2($a,$b) {
  4. if (is_numeric($a) && is_numeric($b))
  5. printf('%d + %d = %d<br>',$a,$b,($a + $b));
  6. else echo '参数错误<br>';
  7. }
  8. sum2(12,12);
  9. sum2(12,'24');
  10. sum2('php','cn');
  11. echo '<hr>';
  12. // is_int()检测是否整数
  13. function sum3($a,$b) {
  14. if(is_int($a) && is_int($b))
  15. printf('%d + %d = %d <br>',$a,$b,($a + $b));
  16. else echo '参数错误<br>';
  17. }
  18. sum3(12,13);
  19. sum3(123.33,123.22);
  20. echo '<hr>';
  21. // int检测整数,float可检测整数和浮点数
  22. function sum4(float $a,float $b) {
  23. return $a . ' + ' . $b . ' = ' . ($a + $b) . '<br>';
  24. }
  25. echo sum4(123,'33');
  26. echo sum4(123.45,123.33);
  27. echo '<hr>';
  28. // is_scalar()检测变量类型是否标量(标量就是单值)
  29. // 是标量返回true
  30. var_export(is_scalar(1));
  31. echo '<br>';
  32. // 对象不是标量返回false
  33. var_export(is_scalar(new class{}));
  34. echo '<hr>';
  35. $str = 'a,1,2';
  36. $arr = ['a','1','2'];
  37. $obj = (object)$arr;
  38. // $str 是字符串 true
  39. echo '$str:is_string ->' . var_export(is_string($str),true), '<br>';
  40. // $str 是布尔 false
  41. echo '$srt:is_bool ->' . var_export(is_bool($str),true), '<br>';
  42. // $arr 是数组 true
  43. echo '$arr:is_array ->' . var_export(is_array($arr),true), '<br>';
  44. // $obj 是对象 true
  45. echo '$obj:is_object ->' . var_export(is_object($obj),true), '<br>';
  46. // $obj 是null false
  47. echo '$obj:is_null ->' . var_export(is_null($obj),true), '<br>';
  48. // $obj 是资源 false
  49. echo '$obj:is_resource ->' . var_export(is_resource($obj),true), '<br>';
  50. ?>

2. 变量声明与常用声明的使用方式

1.驼峰式:$userName``getUser()常用于对象属性和方法中
2.蛇形:set_public常用于函数中
3.帕斯卡:UserModel常用于类的名称中,也叫大驼峰
4.全大写:const define()常量声明中

  1. <?php
  2. // 驼峰式
  3. $userName = '天蓬大人';
  4. echo $userName;
  5. echo '<hr>';
  6. // 蛇形
  7. function set_uesername($name) {
  8. return 'Hello,' . $name;
  9. }
  10. echo set_uesername('灭绝老师');
  11. echo '<hr>';
  12. // 帕斯卡(大驼峰)
  13. class SetName{
  14. private $setTitle = 'php中文网';
  15. public function setTitle() {
  16. return $this->setTitle;
  17. }
  18. }
  19. $SetName = new SetName;
  20. echo $SetName->setTitle();
  21. echo '<hr>';
  22. // const常量全大写
  23. const PHPURL = 'php.cn';
  24. echo PHPURL;
  25. // define()常量全大写
  26. if (true) {
  27. define('USER','天蓬大人');
  28. }
  29. echo USER;
  30. ?>
批改老师:天蓬老师天蓬老师

批改状态:合格

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学