2.part1-1day php变量和常量和数据类型
学习目的:怎么选择合适的类型存储数据
一、变量
1、描述
变量是存储信息的容器
2、变量规则
- 变量以$符号开头,其后是变量名
- 变量名称必须以字母或下划线开头
- 变量名称不能以数字开头
- 变量名称只能包含字母数字字符和下划线(A-z、0-9 以及 _)
- 变量名称对大小写敏感($y 与 $Y 是两个不同的变量)
- 变量命名方式有三种一是首字母小写的驼峰式(目前默认使用),如:$filePath,二是带有下划线的命名方式,如:$file_path,三是首字母大写的驼峰式
- 变量名一定要求意义,不能声明为$a,否则时间久了很难识别这个变量是干什么的,$filePath一下就可看出是文件路径相关的;
3、创建变量
PHP 是一门弱类型语言,在创建时不必向php声明该变量的数据类型,PHP 会根据变量的值,自动把变量转换为正确的数据类型。如:$num = 10; 即可。
(注:这里的弱类型语言是相对于强类型的Java等而言,他在创建时需要指定数据类型,如:int num = 10;)
4、变量作用域
local(局部),global(全局),static(静态)
(1)函数外的叫做全局变量只能在函数外访问
(2)函数内的叫局部变量只能在函数内进行访问
使用global关键词可以在函数内访问全局变量
<?php $num1 = 10; //全局 $num2 = 20; //全局 function add() { global $num1, $num2; //引用全局 $sum = $num1 + $num2; //局部 return $sum; } echo add(); ?>
静态变量用static声明。
变量在函数调用结束时就会销毁,再次调用的时候再重新赋值,当不想删除某个局部变量时可以采用静态变量。
静态变量在函数被再次调用时,他的值为最后一次调用的时候的值,不会被重新赋值。
<?php function add() { static $num = 0; return $num++; } echo add(); //结果为0 echo add(); //结果为1 ?>
(注:这里涉及到函数的概念,在接下来会提到)
二、常量
1、定义方法
(1)define($name, $value, true/false); 参数1是常量的名(字符串类型),参数2为参数值,参数3可选对大小写是否敏感,默认是对大小写敏感的(true),如:define('SIZE', 55);。
(2)用const声明(常用),如:const SIZE = 55;
2、命名规则
与变量不同的是不需要添加'$'符号且名字内的字母全部为大写
3、与静态变量的区别
常量一旦给定了值就不可以修改,静态变量可以修改值。
三、数据类型
String(字符串), Integer(整型), Float(浮点型), Boolean(布尔型), Array(数组), Object(对象), NULL(空值)。
1、字符串
<?php $title = '姓名:'; $name = $title . 'tom'; //用单引号和连接符'.'连接两个字符串加载速度快 $name = "$title tom"; //用双引号可以识别字符串中的变量,但是速度没有单引号快 ?>
2、整型
- 整型必须至少有一位数(0~9)
- 整数不能包含逗号或空格
- 整数是没有小数点的
- 整数可以是正数、负数、0
- 整数可以用三种格式指定:十进制(常用)、八进制(前缀为0)或十六进制(前缀为0x)
<?php $num1 = 10; //十进制 $num2 = 047; //八进制 $num3 = 0x8C; //十六进制 ?>
3、浮点型
<?php $num = 10.38; //带小数部分的数字 ?>
4、布尔型
<?php $result = true; //正确 $result = false; //错误 ?>
5、数组(简介,在数组专项会展开讲)
<?php $cars = array('奔驰', '福特', '丰田'); //默认键名为数字 $cars = array( //指定键名 '德国' => '奔驰', '美国' => '福特', '日本' => '丰田' ); ?>
6、对象(简介,在对象专项会展开讲)
需要先声明类,对类的实例化所产生的就是对象,会在面相对象里详细介绍。
7、空值
可用来清空变量
<?php $name = 'tom'; $name = null; //变量$name的值被清空了 ?>