博客列表 >数据类型转换的一般操作与检测正确性,变量常量定义及操作注意事项

数据类型转换的一般操作与检测正确性,变量常量定义及操作注意事项

CC
CC原创
2021年01月27日 15:08:10573浏览

数据类型转换

  • 临时转换:(要转换的数据类型)变量
  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 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议