PHP 数据类型的转换与检测|变量声明方式与使用|常量声明的方式与使用

  1. 数据类型的转换与检测技术,实例演示;
  2. 变量声明与常用声明的方式与使用,实例演示

一、 数据类型的转换与检测技术

数据类型的转换

序号转换方式函数
1临时转换(int),(string),(array),(object)…
2自动转换根据操作符对操作数的类型要求进行
3强制转换settype()

1.1数据类型的临时转换|强制转换

  1. <?php
  2. //临时转换(int) 数据转换成整型
  3. $a= '996';
  4. echo gettype((int)$a);
  5. echo '<br>';
  6. //临时转换(string)数据转换成字符串
  7. $b= '996';
  8. echo gettype((string)$b);
  9. echo '<br>';
  10. //临时转换(array) 数据转换成数组
  11. $c= '996';
  12. echo gettype((array)$c);
  13. echo '<br>';
  14. //强制转换settype()关键字
  15. $y = 98.36;
  16. $y1 = settype($y, 'int');
  17. var_dump($y);

图示:
数据类型的临时转换|强制转换
1.2数据类型的自动转换

  1. <?php
  2. // 每一种操作符,它要求的操作数类型是固定的,如果
  3. echo 996 + '666';
  4. echo '<br>';
  5. // "+"要求参与计算的数据都是数值类型,如果不是,
  6. echo 996 + (int)'666';
  7. echo '<br>';
  8. echo 996+ 'baidu666';
  9. echo '<br>';
  10. echo (int)'baidu666';
  11. echo 996 + '666baidu';
  12. echo '<br>';
  13. // ".", 希望二边都是字符串,如果不是就转换
  14. echo 'baidu' . 996 . '<br>';
  15. // 等价于
  16. echo 'baidu' . (string)996 . '<br>';
  17. // 最常用的是布尔转换
  18. if (!$name) echo '没定义姓名';
  19. // $email 未定义,NULL
  20. var_dump($name);
  21. // null ==> false
  22. echo var_export((bool)null);
  23. echo '<hr>';
  24. if (!isset($name)) echo '没定义姓名';

图示:
数据类型的自动转换

1.2检测技术

序号转换方式函数
1标量is_int(),is_string(),is_bool()…
2复合is_array(),is_object()
3特殊is_null(),is_resource()

isset(): //变量是否已经声明
empty(): //变量是否为空
defined():      //常量是否已经定义 define()
array_key_exists(mixed key, array search): //检查给定的键名或索引是否存在于数组中
is_numeric ( mixed var ): //检测变量是 否为数字或数字字符串
is_bool(): // 检测变量是否是布尔型
is_float(): // 检测变量是否是浮点型 和is_double,is_real()都一样的用法
is_int(): // 检测变量是否是整数is_integer() 一样的 用法
is_string(): // 检测变量是否是字符串
is_object(): // 检测变量是否是一个对象
is_array(): // 检测变量是否是数组
is_null(): // 检测变量是否为 NULL 值是否是NULL大小写敏感

二、变量和常量

2.1变量

变量知多少
变量就是代码中需要暂存的数据
变量按名访问
变量名必须是一个合法的标识符
合法标识符
仅允许使用: 英文字母(a-z,A-Z),数字(0-9),下
禁止使用数字开头
标识符有二类
预定义的: 保留字, 关键字,class, public
自定义

变量的命名:
  1. 驼峰式: $itemPrice,变量,对象的属性和方法, getUser()
  2. 蛇形: set_public(),函数
  3. 帕斯卡: UserModel, 类,与驼峰式很像,所以也叫: 大驼峰
预定义变量

超全局变量: 数组,任何地方都可以访问,不受作用域限制
$GLOBALS: 引用全局作用域中可用的全部变量
$_SERVER: 服务器和执行环境信息
$_GET :通过 URL 参数(又叫 query string)传递给当前脚本的变量的数组
$_POST:当 HTTP POST 请求的 Content-Type 是 application/x-www-form-urlencoded 或 multipart/form-data 时,会将变量以关联数组形式传入当前脚本
$_FILES:通过 HTTP POST 方式上传到当前脚本的项目的数组
$_COOKIE:通过 HTTP Cookies 方式传递给当前脚本的变量的数组
$_SESSION:当前脚本可用 SESSION 变量的数组
$_REQUEST: 默认情况下包含了 $_GET,$_POST 和 $_COOKIE 的数组
超全局变量: 数组,任何地方都可以访问,不受作用域限制
$GLOBALS: 引用全局作用域中可用的全部变量
$_SERVER: 服务器和执行环境信息
$_GET :通过 URL 参数(又叫 query string)传递给当前脚本的变量的数组
$_POST:当 HTTP POST 请求的 Content-Type 是 application/x-www-form-urlencoded 或 multipart/form-data 时,会将变量以关联数组形式传入当前脚本
$_FILES:通过 HTTP POST 方式上传到当前脚本的项目的数组
$_COOKIE:通过 HTTP Cookies 方式传递给当前脚本的变量的数组
$_SESSION:当前脚本可用 SESSION 变量的数组
$_REQUEST: 默认情况下包含了 $_GET,$_POST 和 $_COOKIE 的数组
$_ENV: 通过环境方式传递给当前脚本的变量的数组$_ENV: 通过环境方式传递给当前脚本的变量的数组

2.2变量变量声明方式与使用

  1. <?php
  2. //1. 变量声明
  3. //变量除了要满足以上的要求外,还有特殊性
  4. //1. 变量必须要用"$"为前缀: $name
  5. //2. 严格区分大小写
  6. $userName = '西门大官人';
  7. $username = '龙门客栈';
  8. echo $userName, ', ', $username, '<br>';
  9. // 函数不区分大小写
  10. function good($name)
  11. {
  12. return 'Good ' . $name;
  13. }
  14. echo good('黄蓉'),'<br>';
  15. echo GOOD('郭靖'),'<br>';

图示:
变量声明

2.3变量赋值|可变变量|默认值传递|引用赋值

  1. <?php
  2. // 变量赋值
  3. $color = 'green';
  4. echo gettype($color), '<br>';
  5. // $color = '$' . 'color';
  6. $y = 'sites';
  7. // $sites = 'baidu百度';
  8. $$y = 'baidu百度';
  9. // $$url: 可变变量,变量标识符来自另外一个变量
  10. echo $y . ' => ' . $$y . '<br>';
  11. echo $y . ' => ' . $sites . '<br>';
  12. // 默认是"值传递"
  13. $price1 = 996;
  14. $price2 = $price1;
  15. printf('price1 = %d, price2 = %d<br>', $price1, $price2);
  16. $price1 = 333;
  17. printf('price1 = %d, price2 = %d<br>', $price1, $price2);
  18. echo '<hr>';
  19. // 引用赋值
  20. $price1 = 996;
  21. // $price2 =& $price1;
  22. $price2 = &$price1;
  23. // 引用赋值其实就是给原始变量起一个别名,并未创建新变量
  24. printf('price1 = %d, price2 = %d<br>', $price1, $price2);
  25. $price1 = 333;
  26. printf('price1 = %d, price2 = %d<br>', $price1, $price2);

变量赋值|可变变量|默认值传递|引用赋值

2.4常量声明方式与使用

常量
是固定的值,一旦创建不可更新,不可删除
常量不是变量,前面不要加” $ “
常量推荐全部大写,多个单词之间用下划线连接常量推荐全部大写,多个单词之间用下划线连接

函数

  1. <?php
  2. // 1.函数
  3. define('MADE', '中国');
  4. echo MADE;

常量
const 只支持字面量,不允许表达式

  1. <?php
  2. const BAIDU = 'www.baidu.com';
  3. echo BAIDU;

图示:
const 只支持字面量

  1. <?php
  2. //define()在运行阶段才创建常量
  3. //if(),function ()
  4. function a() {
  5. define('BEAUTIFUL', 'girl');
  6. }
  7. a();
  8. echo BEAUTIFUL;
  9. echo'<hr>';
  10. if (true) {
  11. define('MADE', '中国');
  12. }
  13. echo MADE;

图示:
define()创建常量

更多相关文章

  1. 数据类型的转换与检测、变量声明与常用声明的使用方式
  2. C语言的数组(上)
  3. 细说PHP的变量与常量
  4. 数据类型转换与检测-变量与常用声明
  5. 阿里巴巴不建议 boolean 类型变量用 isXXX的理由?
  6. PHP入门:集成环境、php运行原理、php使用方式和常见数据类型
  7. php学习小结(php程序的运行原理、短标签的使用与html混编、常用数
  8. PHP环境搭建与基础语法
  9. php的初步认识

随机推荐

  1. Android(安卓)程序中哪个 Activity 最先
  2. Android使用代码
  3. Android三种方法设置ImageView的图片
  4. Android EventBus3.0 索引
  5. Android监听应用程序安装和卸载
  6. android theme中的各个color的含义
  7. android tp多点触摸
  8. Android下rtc驱动调用流程
  9. 安卓课程十八 RadioButton单选按钮的使用
  10. 【android】通过handle,looper实现多线程