关于变量
注意点:
- 在php中,变量是通过$符号定义的
- 在php中,变量名是区分大小写的
数据类型
-
布尔类型
- 布尔类型有两个值,true和false,它不区分大小写
- 当我们用”echo”指令输出布尔类型时,如果是“true”则输出的是“1”,“false”则什么也不输出。我们可以使用“var_dump”函数,获取它真正的数据类型。
<?php $flag=TRUE; $flag2=false; $string1='您好'; echo $flag; //输出1 echo $flag2; //什么也不输出 var_dump($flag); //输出 boolean true var_dump($string1); //输出 string '您好' (length=6) ?>
-
字符串类型
字符串型可以用三种方法定义:单引号形式、双引号形式和Heredoc结构形式。
当字符串中包含引号的时候,我们有以下几种解决方法
- 在单引号中嵌入双引号
- 在双引号中嵌入单引号
- 使用转义符"\"
当引号遇到美元符号
- 当双引号中包含变量时,变量会与双引号中的内容连接在一起;
- 当单引号中包含变量时,变量会被当做字符串输出。
当字符串很长
当字符串很长的时候我们可以使用Heredoc结构形式的方法来解决该问题,首先使用定界符表示字符串(<<<),接着在“<<<“之后提供一个标识符GOD,然后是字符串,最后以提供的这个标识符结束字符串。如下图:
- 首先在<<<之后的字符GOD是自己定义的,随便什么都是可以的(比如AAA都可以),但是结尾处的字符一定要和他一样,他们是成对出现的,就像{}这样的——这是最基本的。
- 结尾的一行(如上例的GOD;),一定要另起一行,并且该行除了Eof;这个定界符结尾标识之外不能有任何其他字符,前后都不能有,包括空格。如果在本行最前或者最后出现空格,制表符的话,你会收到一个错误信息
- 如果在定界符中间出现有PHP的变量,你只需要像在其它字符串中输出一样写就行了,但是最好给变量加一个{}要不然可能会出错,如下:
<?php header("Content-type: text/html; charset=utf-8"); $a=2; $string1=<<<GOD 我有一只小毛驴,我从来也不骑。有一天{$a}我心血来潮,骑着去赶集。我手里拿着小皮鞭,我心里正得意。不知怎么哗啦啦啦啦,我摔了一身泥. GOD; echo $string1; ?>
-
资源类型
资源是由专门的函数来建立和使用的,例如打开文件、数据连接、图形画布。
-
常量
常量可以理解为值不变的量(如圆周率);常量主要功效是可以避免重复定义,篡改变量值
定义一个自定义常量
自定义的常量是通过php中的函数define(name,value,case_insensitive)来定义的,该函数有三个参数,如下说明:
参数 | 描述 |
---|---|
name | 必要参数。指定常量的名称。常量的命名规则与变量的一致,但是一般常量我们都用全大写,常量名可以用存储常量名的变量表示 |
value | 为必选参数,它是常量的值 |
case_sensitive | 可选参数,可选的,规定常量名是否对大小写敏感。默认是false。 |
<?php $p = "PII"; define("PI",3.14); define($p,3.14); echo PI; //输出3.14 echo "<br />"; echo PII; //输出3.14 ?>
常量取值
- 使用常量名直接获取值;例如计算圆周率的面积
<?php define("PI",3.14); $r=2; $area=PI*$r*$r;//计算圆的面积 echo $area; ?>
2.使用constant()函数。它和直接使用常量名输出的效果是一样的,但函数可以动态的输出不同的常量,在使用上要灵活、方便,其语法格式如下:
mixed constant(string constant_name)
第一个参数constant_name为要获取常量的名称,也可为存储常量名的变量。如果成功则返回常量的值,失败则提示错误信息常量没有被定义。(注:mixed表示函数返回值类型为多种不同的类型,string表示参数类型为字符串类型)。
<?php define("PI",3.14); $r=3; $area=constant("PI")*$r*$r;//计算圆的面积 echo $area; ?>
PHP中的运算符
- PHP中的字符串连接运算符
- 连接运算符(“.”):它返回将右参数附加到左参数后面所得的字符串。
- 连接赋值运算符(“.=”):它将右边参数附加到左边的参数后。
php foreach的用法
- 只取值,不取下标
<?php foreach (数组 as 值){ //执行的任务 } ?>
实例:
<?php $students = array( '2010'=>'令狐冲', '2011'=>'林平之', '2012'=>'曲洋', '2013'=>'任盈盈', '2014'=>'向问天', '2015'=>'任我行', '2016'=>'冲虚', '2017'=>'方正', '2018'=>'岳不群', '2019'=>'宁中则', );//10个学生的学号和姓名,用数组存储 //使用循环结构遍历数组,获取学号和姓名 foreach($students as $a){ echo $a;//输出(打印)姓名 echo "<br />"; } ?>
2.同时取下标和值
<?php foreach (数组 as 下标 => 值){ //执行的任务 } ?>
实例:
<?php $students = array( '2010'=>'令狐冲', '2011'=>'林平之', '2012'=>'曲洋', '2013'=>'任盈盈', '2014'=>'向问天', '2015'=>'任我行', '2016'=>'冲虚', '2017'=>'方正', '2018'=>'岳不群', '2019'=>'宁中则', );//10个学生的学号和姓名,用数组存储 //使用循环结构遍历数组,获取学号和姓名 foreach($students as $key =>$v){ echo $key.":".$v;//输出(打印)学号:姓名 echo "<br />"; } ?>