什么是变量? 在程序的执行过程中值可以发生变化的量,称之为变量 如:$username="zhangsan"; //定义一个变量$username,并赋值为"zhangsan" $username="李四"; //变量$username的值替换为"李四" echo $username; //输出变量的值到浏览器显示,结果:"李四" 如何定义一个变量? 定义变量的格式:$变量名; 注意:变量名的命名规则: ①变量名由字母、数字或下划线组成,注意:字母主要指的是24个英文字母 ②变量名不能以数字或特殊字符开头 ③变量名是严格区分大小写的 合法的变量名: $username; $_username; $_username2; 不合法的变量名: $2username; //错误,变量名不能以数字开头 $&username; //错误,变量名不能是特殊字符开头 给变量赋值: $username="zhangsan"; //给变量$username赋值为"zhangsan" echo gettype($username); //变量$username的类型为String字符型 $num=10; //给变量$num赋值为10 echo gettype($num); //变量$num的类型为interger型 $Score=100; //给变量$Score赋值为100 echo $score; //Notice: Undefined variable: score in F:\wamp\www\index.php on line 3 对变量的一些理解: ①在php中用$符号定义变量 ②变量名严格区分大小写 ③变量名都是以字母或下划线开头,不能以数字或特殊字符开头 ④php是一种弱类型的语言,不需要事先声明变量的数据类型,变量的数据类型在赋值的时候会自动声明 什么是自定义变量和内置变量? 自定义变量:通过 $变量名 格式定义的变量 内置变量:php系统自带的一些变量,可以在作用域中直接使用,有的地方叫做预定义变量或超全局变量 php中九中预定义变量 $_GET $_POST $_REQUEST $_SERVER $_ENV $_FILES $_COOKIE $_SESSION $GLOBALS 什么是可变变量? 变量名也是一个变量的变量,叫做可变变量(可变变量又称为变量的变量) 比如: $one="first"; $$one="linux"; echo $one; //输出普通变量 echo $$one; //此时变量名$one又是一个变量 echo $first; //可变变量的变量名$one被变量值first替代,与$$one等效 什么是常量? 在程序的执行过程中,不会发生变化的量,称之为常量 常量的定义 定义常量的格式:define(常量名,常量值,true|false); 如:define("DBHOST","127.0.0.1"); define("DBNAME","root",true); define("dbpassword","123"); define("USERNAME","admin"); define("USERNAME","admin123"); echo DBHOST; //结果:127.0.0.1 echo $DBHOST; //错误:Notice: Undefined variable: DBHOST in F:\wamp\www\index.php on line 6 echo dbhost; //错误:Notice: Use of undefined constant dbhost - assumed 'dbhost' in F:\wamp\www\index.php on line 6 结果:dbhost echo dbname; //结果:root echo dbpassword; //结果:123 echo USERNAME; //Notice: Constant USERNAME already defined in F:\wamp\www\index.php on line 6 结果:admin 对常量理解的一些总结: ①常量的定义使用define()函数,而不使用$符号 ②常量名习惯上使用大写字母 ③常量的命名规则与变量一样,由字母、数字或下划线组成,不能以数字或特殊字符开头 ④参数3:表示常量名是否区分大小写, true-不区分大小写 false-区分大小写 ⑤常量值一般为四种基本标量类型 ⑤常量的值是固定不变的,一旦被定义,就不能被改变或取消定义 如何检测一个常量是否被定义? 格式:defined(被检测的常量名); 注意:如果常量被定义的话,返回true,否则返回false 如:if(defined("USERNAME")){ echo "常量已被定义"; }else{ echo "常量未被定义"; } 什么是自定义常量和内置常量? 自定义常量:通过define()语言结构定义的常量,称之为自定义常量 内置常量:php系统自带的常量,这些常量在任何页面数值都不发生改变,又叫预定义常量 常见的几种内置常量: PHP_VERSION: 显示php版本号 PHP_OS: 显示服务器的操作系统,如:windows、linux等 __FILE__: php文件名 __LINE__: php文件的行数 TRUE 真 FALSE 假 php的数据类型 php的数据类型主要包括如下几种: 四种基本数据类型(标量类型) 整型:int,表示一个整数,如:$num=10; 浮点型:float,表示一个小数,如:$score=98.5 字符串型:String,表示一组由单引号或双引号中括起来的一系列字符,如:$str="admin"; 布尔型:boolean,主要用于条件判断,表示真或假,如:$i=true; 注意:在浏览器中true体现为数值1,false体现为空,即什么都没有,空白 两种复合数据类型 数组:array 对象:object 两种特殊数据类型 空类型:NULL 资源类型:resource 数据类型间的转换 字符串与整型之间的转换 如:$a="66"; $b=22; $c=$a+$b; $d="abc"; $e="10ddd"; echo $b+$d; //结果为整型值:22 echo $b+$e; //结果为整型值:32 echo $c; //结果为整型值:88 echo $a; //结果为字符串类型值:66 echo echo gettype($c); //结果:interger,说明是整型 echo gettype($a); //结果:String,说明是字符串类型 总结: ①当字符串类型与整型进行运算时,字符串类型首先会转化为整型,再参与运算 ②如果参与运算的字符串内容不是以数字开头,则在参与运算时,会自动转换为整型值0 ③如果参与元算的字符串内容以数字开头,但不全是数字,则在参与运算时,数字开头部分会转换为整型参与运算 强制转换 如:$a=1.1; $b=(int)$a; $c=(string)$a; echo $a; //结果:浮点型值 1.1 echo $b; //结果:整型值 1 echo $c; //结果:字符型值 1.1 echo gettype($a); //double,代表浮点型 echo gettype($b); //interger,代表整型 echo gettype($c); //string,代表字符型 字符串的定义? 何为字符串?由单引号或双引号括起来的一系列字符的组合 定义字符串的三种方式: 第一种:单引号 如:$str='admin'; echo $str; //浏览器中显示结果为:admin $str1='$str'; echo $str1; //浏览器中显示结果为:$str1 , 而不是admin 总结:单引号中的变量会原样输出,不会被解析 在单引号中,如何显示某些特殊符号到浏览器? 如:echo 'his is a \'book\''; //结果:this is a 'book' echo '$#^&'; //结果:$#^& echo 'this is a 'book''; //Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in F:\wamp\www\index.php on line 8 echo 'this is a "book"'; //结果:this is a "book" 总结: ①若想在单引号中嵌套单引号,需要在前面使用转义符"\" ②若想在单引号中将其它特殊符号显示出来,不需要使用转义符"\" ③单引号中是不能再嵌套单引号的,如果非要嵌套的话,必须使用转义符"\" ④单引号中可以嵌套双引号,双引号可以不用转义符"\" 第二种:双引号 如:$str="admin"; echo $str; //浏览器中显示结果为:admin $str1="$str"; echo $str1; //浏览器中显示结果为:admin 总结:双引号中的变量会被解析 在双引号中,如何显示某些特殊符号到浏览器? 如:echo ''this is a \"book\""; //结果:this is a "book" echo "$#^&"; //结果:$#^& echo "this is a "book""; //Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in F:\wamp\www\index.php on line 8 echo "this is a 'book'"; //结果:this is a 'book' echo "\$str"; //结果:$str 总结: ①若想在双引号中嵌套双引号,需要在前面使用转义符"\" ②若想在双引号中将其它特殊符号显示出来,不需要使用转义符"\"(标注:变量除外) ③若想在双引号中将变量名前的$符号显示出来,必须使用转义符"\" ④双引号中是不能再嵌套双引号的,如果非要嵌套的话,必须使用转义符"\" ⑤双引号中可以嵌套单引号,单引号可以不用转义符"\" 第三种:定界符 定界符定义字符串的格式: $str=<<<xxx 字符串内容 xxx; 注意: ①xxx为定界符的开始与结束,名称可以自己命名 ②定界符的结束必须单独占一行,并且在行首,前面不能有空格 ③定界符中的变量会被解析 ④若想在定界符中显示某些特殊符号,不需要在前面使用转义符"\"(变量除外) ⑤若想在定界符中显示变量前的$符号,需要使用转义符"\" 特殊字符在字符串中的应用 在php中,有一些常用的特殊字符代表着特殊的含义 如:\n //代表换行 \t //代表制表符 \r //代表回车 \\ //代表一个反斜杠 单引号中的这些特殊字符会被原样输出,不会被解析为特殊含义 如:echo ''hello\nworld; //结果:hello\nworld 双引号中的这些特殊字符会被解析为特殊含义 如:echo "hello\nworld"; //结果:hello world ,在浏览器中显示一行,在源代码中显示两行,因为html中的换行符只认<br/>标签。
PHP基本语法
最新推荐文章于 2021-04-05 21:02:18 发布