博主信息
博文 29
粉丝 0
评论 0
访问量 24399
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
数据类型转换的一般操作与检测正确性,变量常量定义及操作注意事项
CC
原创
821人浏览过

数据类型转换

  • 临时转换:(要转换的数据类型)变量
  1. <?php
  2. // http://php.io/0125/demo21.php?p=5&%20id=3
  3. // print_r查询数组
  4. print_r($_GET);
  5. $id = $_GET['id'];
  6. echo '<br>';
  7. // 查询值和类型
  8. var_dump($id);
  9. echo '<br>';
  10. $id=(int)$id;
  11. if($id===3){
  12. echo"这是整数";
  13. }
  1. <?php
  2. $n = 123;
  3. var_dump($n,(string)$n);
  • 自动转换
  1. <?php
  2. // 自动转换
  3. echo 'php'. 123;
  4. echo '<br>';
  5. // 手动转换
  6. echo 'php'.(string)123;
  • 永久转换(少用)
    settype(变量,转换的数据类型)
  1. <?php
  2. $aa = 88;
  3. settype($aa,'string');
  • 变量的检测 :is_数据类型
  1. <?php
  2. function sum1($a,$b){
  3. // 格式化输出
  4. if (is_numeric($a)&& is_numeric($b))
  5. printf('%d+%d=%d',$a,$b,($a+$b));
  6. else echo '数据类型出问题';
  7. }
  8. sum1(1,2);
  9. echo' <hr>';
  10. sum1("bb",2);
  • php7支持的检测语法
  1. <?php
  2. function sum4(float $a,float $b) : string
  3. { // 参数类型限定可以自动识别数值或数值型的字符串, is_numeric()
  4. // return sprintf('%d + %d = %d<br>', $a, $b, ($a + $b));
  5. return $a . ' + ' . $b . ' = ' . ($a + $b). '<br>';
  6. }
  7. echo sum4(120, "456");

变量(define用的更多)

  1. 驼峰式: $itemPrice,变量,对象的属性和方法, getUser()
    1. 蛇形: set_public(),函数
    2. 帕斯卡: UserModel, 类,与驼峰式很像,所以也叫: 大驼峰
    3. 全大写: 常量
      函数不区分大小写
  • 变量赋值
    1. <?php
    2. $url ='site';
    3. $$url='php中文网';
    4. // $$可变变量
    5. echo $url.'=>'.$$url;
  • 变量赋值会更新上一次赋值
    1. // 引用赋值
    2. <?php
    3. // 引用赋值
    4. $price1 = 888;
    5. // $price2 =& $price1;
    6. $price2 = &$price1;
    7. // 引用赋值其实就是给原始变量起一个别名,并未创建新变量
    8. printf('price1 = %d, price2 = %d<br>', $price1, $price2);
    9. $price1 = 666;
    10. printf('price1 = %d, price2 = %d<br>', $price1, $price2);
  • 预定义变量
  1. <?php
  2. $name = '天蓬老师';
  3. $email = 'admin@php.cn';
  4. printf('name = %s, email = %s<br>', $name, $email);
  5. // 引用全局变量,作为数组的键名,值名
  6. printf('name = %s, email = %s<br>', $GLOBALS['name'], $GLOBALS['email']);
  7. echo 'IP: '. $_SERVER['REMOTE_ADDR']. '<br>';
  8. echo '浏览器: '. $_SERVER['HTTP_USER_AGENT']. '<br>';
  9. echo '脚本绝对路径 = '. $_SERVER['SCRIPT_FILENAME']. '<br>';
  10. echo '脚本相对路径 = '. $_SERVER['SCRIPT_NAME']. '<br>';
  11. echo '当前脚本名称 = '. $_SERVER['PHP_SELF']. '<br>';
  12. // http://php.io/0126/demo3.php?id=1&name=admin
  13. // id=1&name=admin 查询字符串,给GET请求用
  14. echo '查询字符串 : '. $_SERVER['QUERY_STRING']. '<br>';
  15. // http://php.io/0126/demo3.php?id=1&name=admin
  16. // http://php.io/0126/demo3.php/id/5/name/peter?id=1&name=admin
  17. // /id/5/name/peter: path_info
  18. // http://php.io/0126/id/5/name/peter.html
  19. echo 'PATH_INFO = '. $_SERVER['PATH_INFO']. '<br>';
  20. echo 'URI: ' . $_SERVER['REQUEST_URI'], '<br>';
  21. echo $_GET['id'];
  • 定义常量

const 运行在编译阶段
define()在运行阶段才创建常量

  • 两种定义
  1. <?php
  2. define('zhonguo',"chinese");
  3. const nan="man";
  4. printf('name:%s,xingbie:%s',zhonguo,nan);
  • if、函数在define中定义常量,const不行,创建之后再运行
  • if(),function ()
  1. function a() {
  2. define('SITE', 'php.cn');
  3. // const A = 1;
  4. }
  5. a();
  6. echo SITE;
  • define与const定义数组
  1. define('ARR1', [1,2,3]);
  2. print_r(ARR1);
  3. const ARR2 = [1,2,3];
  4. print_r(ARR2);
  5. `
批改老师:天蓬老师天蓬老师

批改状态:合格

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系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+教程免费学