PHP简介
PHP,Hypertext Preprocessor,超文本预处理器,PHP是一种开源的服务器端的脚本程序。PHP语法,结合了C、Java、 Perl、JavaScript等语法,并且PHP也有自己的语法。PHP入门比较简单。
PHP语法基础
PHP与ASP一样,也是嵌入到HTML文件中去的;
PHP文件必须要经过虚拟主机(Apache服务器)解析后,才能看到结果;
PHP的标记是:<?php ?>
PHP文件的扩展名:.php
PHP的程序语句必须以分号结束(;),JS中的结束分号可有可无。
PHP访问的路径上不能出现中文字符;
PHP中是区分大小写的,但PHP中的关键字和函数名不区分大小写;
break、while、WHILE 等关键字不分大小写
PHP中的注释
HTML注释:
CSS注释:/* */
JavaScript://或 /* */
PHP的单行注释://或#
PHP的多行注释:/* */
PHP中的变量
变量就是存储数据的临时区域。程序中的所有数据,都是用不同的变量来进行存储的。
一、PHP变量的命名规则
变量包含:字母、数字、下划线字符;
变量只能以字母或下划线开头;
变量不能以数字开头;
PHP变量前必须要加一个美元符号($);比如: $name = “zhang”
PHP变量不需要提前定义,使用时直接赋值即可;
PHP中的变量名是区分大小写的,但关键字和函数名不区分;
注意:PHP的输出语句是echo,JS中的输出语句document.write( )
echo “字符串”;
echo $name;
echo true;
变量的数据类型
JS中的基本数据类型:String、 Number、 boolean、NULL、undefined
JS中的复合数据类型:Array、 Object、 Function
PHP中的数据类型分三大类:基本数据类型、复合数据类型、特殊数据类型
基本数据类型:String、Integer、Float、Boolean
复合数据类型:Array、Object(自定义对象,MVC、面向对象编程)
特殊的数据类型:NULL(空型)和Resource(资源)
一、布尔型数据类型
布尔型只有两个值true和false。比如:$isMarried = true; $isMarried = TRUE;
提示:true和false是PHP的关键字,因此,不区分大小写。
二、数值型数据类型
数值型分为:整型和浮点型。
比如:$age = 30; $score = 89.89;
三、字符串型
用单引号或双引号,引起来的字符,就是字符串。
如:$name = ‘周更生’ ; $school = “北京科技大学”;
第三种方式:Heredoc方式
作用:当想处理较长文本时,可以使用该方式。
语法格式:
$str= <<
中间的内容随便写
Heredoc;
说明:
“<<
Heredoc的名称可以自己规定;
“Heredoc;”是长文本的结束标记,必须单独一行,不能缩进,必须以分号结束;
其中的变量,可以使用{}括起来,如:{$name}
其中的转义字符,都可以使用;
字符串中需要注意的部分
如果单引号中存在变量的话,输出的是变量的名称,而不是值;
$name= "周更生";
$str = '
我的名字叫$name';
echo $str;
如果双引号中存在变量的话,输出的又是变量的值;
$name = "周更生";
$str = "我的名字叫$name";
echo $str; //我的名字叫周更生
如果双引号中,变量后面跟一个非空字符(除HTML标记外),会让PHP编译器糊涂,它不知道究竟哪个是变量,因此,PHP会将$之后的所有字符当成一个变量,可这个变量不存在。
解决的办法:就是用{}括号,把变量括起来。
$name = "周更生";
$str = "
{$name}是我的名字!";
echo $str;
转义字符
单引号内的转义字符,只能是\’和\”
双引号内的转义字符,可以是所有的。
四、空类型NULL
在JS中,一个变量定义未赋值时,将返回undefined
当一个变量定义了,但未赋值时,将返回NULL类型,NULL类型只有一个值NULL。
以下几种情况,将返回NULL:
变量定义未赋值时;$name;
变量赋了一个NULL值;$name=NULL
unset删除一个变量时,也将返回NUL
数据类型转换
大部分情况下,都是程序自动转换。
一、强制转换的函数(结构)
(bool)$name //转成布尔型
(string)$name //转成字符串
(int) $age //转成整型 (int)23.45 = 23
(float) $int //转成浮点型
(array)$str //转成数组
……
二、数据类型的判断 is_*,返回的结果true或false
is_bool($var ) //判断变量是不是布尔型
is_string($var) //是不是字符型
is_int($var) //是不是整数
is_float($var) //是不是浮点数
is_null($var) //是不是为空
is_numeric($var)//是不是数值型
is_array($var) //是不是数组
……
三、强制将其它类型转成字符型
案例:4数据类型转换.php
var_dump($var)输出一个变量的类型和值
语法:void var_dump($var)
描述:打印输出一个变量的类型和值
举例:var_dump($var)
变量的类型完全是根据值决定的,给变量赋一个什么类型的值,它就是一个什么类型的变量。
基本数据类型:string、int、float、boolean
特殊的数据类型:null
$name = “;
//$name = $name+”的毕业院校”; //js中+号变成连接符,PHP中的+就是数学运算
查看PHP、Apache、MySQL的一些配置信息
phpinfo();
变量的判断:isset()和empty()
isset():判断一个变量是否存在
语法格式:boolisset($var)
返回值:变量有值,且值不是NULL的,返回true;否则,返回false
$name = NULL;
if(!isset($name))
{
echo “变量不存在”;
}else
{
echo “变量存在”;
}
empty():判断一个变量是否为空
语法格式:boolempty($var)
返回值:如果变量的为0、””、”0”、NULL、false、array()等,都返回true,除此之后,都返回false。
$a = 0;
empty($a); //true
isset($a); //true
PHP常量的定义
常量就是一个永远不变的量。比如:圆周率、动力系统等。
语法格式:define(name,value[,flag])
参数说明:
name:指常量的名称,常量名称放在引号中;
value:指常量的值或数据;
flag:可选参数,设置常量是不是大小写敏感,默认为false,区分大小写;
举例:
//定义常量
define("DB_HOST","localhost");
define("DB_USER","root");
define("DB_PWD","root");
//输出常量
$str = "
MySQL数据库的配置信息
";$str .= "MySQL主机名:".DB_HOST;
$str .= "
MySQL的用户:".DB_USER;
$str .= "
MySQL的密码:".DB_PWD;
echo $str;
PHP运算符
算术运算符:+、-、*、/、%、++、--
%取余:两个数相数取余数。如:10%3=1
++:加1运算符,$i++和++$i
$i++:先将$i的值赋给左边的变量,然后$i再加1;
++$i:将$i的值先加1,然后再赋给左边的变量;
$a = 10;
$b = $a++; // $a= 11, $b=10
$x = 10;
$y = ++$x; // $x = 11,$y=11
字符串运算符:.和.=
$str= “abc”;
$str.= “e”; //$str = “abce”;
赋值运算符:=、+=、-=、*=、/=
$a= “100px”; //转成数值是100,相当于parseInt()
$a+= 10; // 结果110,展开后$a = $a +10
比较运算符:>、=、<=、==、!=、===、!==
比较运算符的结果有两个:true和false
逻辑运算符:&&、||、!
逻辑运算符的结果有两个:true和false
&&逻辑与:$a && $b ,如果$a和$b都为true时,结果为true
||逻辑或: $a || $b,如果$a和$b有一个为true时,结果为true
!逻辑非:取反运算,!$a
以下路径的完整解析
三元运算符
三元运算符,应该有三个操作数的。
语法格式:条件表达式 ? 结果1 : 结果2
举例:$result = $isMarried ? “已婚” : “未婚”;
IF条件判断
结构一:
if(条件表达式)
{
条件为true执行的代码;
}
结构二:
if(条件表达式)
{
条件为true执行的代码
}else
{
条件为false执行的代码;
}
结构三:多条件
if(条件1)
{
代码1;
}else if(条件2)
{
代码2;
}else{
如果上面条件都不满足执行的代码;
}
switch分支结构
switch(变量)
{
case值1:
代码1;
break;
case值2:
代码2;
break;
default:
如果以上条件都不满足执行的代码;
}
while循环
语法结构:
$i = 0; //变量初始化
while($i<100)
{
echo $i.”
”;
$i++; //变量更新
}