首页 > 代码库 > php基础:变量,运算符,控制结构

php基础:变量,运算符,控制结构

变量定义:变量来源于数学。是计算机语言中能储存计算结果或能表示值的抽象概念。即在程序运行过程中它的值是允许改变的量。

变量的命名规范:变量名由A到Z、a到z,数字0-9,和_组成,并且区分大小写,不能以数字开头。

 

变量赋值方式有二种传值赋值和引用赋值。

1.传值赋值,传值赋值是当将一个表达式的值赋予一个变量时,新的变量在内存中的指针指向原变量的的值,当一个变量的值赋予另一个变量时,改变其中一个变量的值,将不会影响到另一个变量。如 $a = 2;(将等号右边的值2赋给等号左边的值$a)

2.引用赋值,引用赋值是 新的变量在内存中的指针指向了原始变量在内存存储的地址,任意改变其中一个变量的值,另外一变量的值也会改变,如($a = 8; $b = &$a;)

举列子就是:如2个人在电视,传值赋值就是2个人在2台电视看同一个台,一个人换台了,不影响另外一个人接着看前面的那台。引用赋值是2个人在看同一台电视,一个人换台了,2个人都要看新的台。

 

变量的类型有8种,内存中的变量值并不是只储存了变量值,还储存了它的变量类型

1.整型(integer)数学中的整数 如1,789;

2字符串型(string) 一串字符 如‘adbcdf‘;

3浮点型(float,double)数学中的小数 如’3.115926‘;

4布尔型(boolean)真和假  false和true;

5.null 没有值 值标注了它的类型为NULL 它的值的字段是空的,null是没有值的。

6数组(array) 键值对符合数据  如$a = array(name=>‘zhansan‘,age=>‘23‘);

7.对象(object)对象是存储数据和有关如何处理数据的信息的数据类型。对象由2部分组成 属性和方法

8资源(resource) 是可读可写的一组数据

 

变量的检测:

echo一个不存在的变量,会报notice(注意,警告)错误,所以要检测一下这个变量是不是存在;

1.isset()函数——检测变量是否设置(声明),已经声明的变量且值不为NULL的变量 检测结果返回true 否则全部返回false 检测多个变量时,每个单项符合要求才会返回true,否则结果为false,isset()函数只能用于检测变量,传递任何其他的参数都会解析错误,

检测常量是否设置(声明)可以用defined()函数

2.empty()函数——检测一个变量是否为空,若变量不存在则返回 TRUE,若变量存在且其值为""、0、"0"、NULL、、FALSE、array()、var $var; 以及没有任何属性的对象,则返回 TURE
若变量存在且值不为""、0、"0"、NULL、、FALSE、array()、var $var; 以及没有任何属性的对象,则返回 FALSE。 empty() 只能用于变量,传递任何其它参数都将造成Paser error而终止运行。

以下值,都被理解为成布尔型值的假,‘0‘,0,0.0,false,NULL,array();而其它值,都被当成布尔型的真

变量类型的检测:

检测一个变量,php是把它存储成一个什么的样的类型

gettype()——获取变量的类型 不过尽量不要使用 gettype() 来测试某种类型,因为其返回的字符串在未来的版本中可能需要改变。此外,由于包含了字符串的比较,它的运行也是较慢的。使用 is_* 函数代替。

is_float()[is_double] 检测变量是否为浮点型
is_int()[is_integer] 检测变量是否为整型

is_string() 检测变量是否为字符串
is_object() 检测变量是否为对象
is_array() 检测变量是否为数组
is_resource 检测变量是否为资源类型
is_bool 检测变量是否是布尔型
is_null 检测变量是否为 NULL

 

调试打印变量:

开发程序的时候,不可避免的要打印变量的值

echo 打印字符串和数字  布尔型的true会打印出1,falsenull什么都不显示

print_r 打印层次化的数据 ,比如对象和数组 不要用echoprint_r打印布尔型的值,因为会干扰我们 var_dump打印布尔和null

var_dump 打印变量的类型和值(调试代码方便)

 

类型转换

 

php基础:变量,运算符,控制结构