介绍:
html css js运行环境为浏览器,浏览器在window上运行.
运行环境:wamp phpstudy xammp
php运行环境apache,apache在Linux上运行,php运行之后需要数据库
Apache处理该并发不是很好,ngnix支持高并发,性能比apache好一点.
php代码运行,必须在apache环境下才可以,需要安装phpstudy集成环境,把代码拷贝到www目录下.
地址栏输入localhost可以直接访问到www目录,才可以正常解析.
php支持与html混排,混排的原则,php的代码写到php标签对里,不是php的代码正常些就OK
我是真
语法规则:
1.php语句结束后必须加分号.但是带花括号可以不加.
2.纯php文件我们只要结束,因为可能会导致多余空格的输出.
3.php中如何声明一个变量,必须以$开头.
4.注释://单行注释/**/多行注释#脚本注释
5.php中变量命名,由字母数字下划线,$后面只能跟字母和_,然后跟数字,不能直接在$后面跟数字,而且变量是区分大小写的。
变量:
eaco:只能输出简单类型 字符串 数字 布尔值
var_dump:可以输出变量的值和类型,而且可以打印数组.
传值赋值:
$a = 123;
$b = $a;
$b= 222;
echo $a; //123
传址赋值:
$c = 123;
$d = &$c;
$d = 666;mknl
echo $c; //666
get方式提交的数据会出现在地址栏中,明文显示,不安全
全局超级数组:$_GET取get参数.
post方式提交数据地址栏中不显示,安全。全局超级数组:$_POST取post参数.
request既可以接收到post过来的数据,也可以接收get方式提交的数据.
全局超级数组:$_request取post、get参数.
常量:
定义:define(“常量名”,”常量值”);
常量名一般用大写表示,可快速判断.
Php提供了系统的常量:
PHP_VERSION显示PHP版本
PHP_OS显示服务器的操作系统版本
TRUE FALSE表示真假的常量
检测变量是否存在:
isset(变量名) 返回值boolean
删除变量:
unset(变量名) 是一个语句,没有返回值
检测常量是否存在:
defined(常量) 返回值boolean
常量变量不同:
1.常量前面没有美元符号
2.常量只能用define()函数定义,二不能通过赋值语句
3.常量一旦定义就不能被重新定义或者取消定义
4.常量的值只能是标量(字符串、数字、布尔值、不是数组对象)
5.常量可以不用理会变量范围的规则而在任何地方定义或访问
数据类型:
当转换为boolean时,以下值为false:其他值都为TRUE.
1.布尔值FALSE
2.整型值0(零)
3.浮点型值0.0(零)
4.空白字符串、字符串“0”
5.没有成员变量的数组
6.没有单元的对象(仅适用于PHP4)
7.特殊类型NULL(包括尚未设定的变量)
字符串:
单引号定义的变量,不能解析变量.
双引号定义的字符串可以解析变量.
NULL:数据类型只有一个值NULL
1.变量未被赋予任何值
2.变量被赋值为NULL
3.被unset()函数处理后的变量
得到变量的类型:getType()
检测是否为布尔型:is_bool
检测是否为整型:is_int
检测是否为浮点数:is_float
检测是否为null:is_null
强制类型转换:
intval()强转成整型
floatval()强转成浮点型
srrval()强转成字符串
运算符流程控制:
Php流程控制
PHP中 有三种控制语句用以实现选择结构与循环结构:
1、 条件控制语句:if、else、elseif和switch;
2、 循环控制语句:foreach、while、do while和for;
3、 转移控制语句:break、continue和return。
条件控制语句
If语句,用法:
If(A)
Statement1;
Else
Statement2;
解析:如果A为true,则执行statement1;否则执行statement2。
Switch语句,语法如下:
Switch(A)
{
Case val1:
Statement1;
Break;
Case val2:
Statement2;
Break;
Default:
Statement3;
}
当一个case语句中的值和switch表达式A的值匹配时,PHP开始执行语句,直到switch程序段结束或者遇到第一个break语句为止
(如果没有遇到break,则PHP将继续执行下一个case)。
与if相比switch达到了更高的效率:
While的语法:
While(A)
Statement;
解析:只要while表达式中的A为TRUE,就执行statement。
do···while与while的区别只是在循环结束时do···while进行检查,不管循环的条件满足与否,do···while都将执行一次。
Foreach语句,用于数组的遍历,以后将会学到。
转移控制语句
PHP中主要有三种转移控制语句:break、continue和return。
1、 break语句
break语句用于结束当前循环,break可以接受一个可选的数字参数来决定跳出几重循环。
Continue语句
Continue用于跳出本次循环,与break不同的是,continue跳出后将继续执行下一次循环。
Return语句
Return语句用于结束一个函数或者一个脚本文件。如果在一个函数中调用return语句将立即结束这个函数的执行,并将它的值作为参数返回。
当然,在PHP中也可以将return当做一个函数来使用。如return(),并在括号内写上要返回的参数。这种用法并不常见。
函数:
补充:打印变量的方法:print_r则是打印复合类型如数组对象
方法
functionsum($num1,$num2){}
当没有return语句时,函数执行的结果NULL
JS中没有return语句时,返回结果为undefined
检测函数是否存在function_exits(函数名)var
在php中:
$yj = 123;//全局变量
functionsum(){
$yj = 222;//局部变量 二者互不影响
echo $yj;
}
sum();
global引入全局变量:(有利于程序的开发和维护)
$p= 'pp';
functionp(){
global$p;
echo $p;
}
p();//pp
静态变量:
functionp(){
static $a = 1;
$a++;
echo $a;
}
p();//2
p();//3
p();//4
默认参数:
functionsum($num1,$num2=2){
echo $num1+$num2;
}
sum(1,5)//6
需要默认值的放到后边
变量函数:
可以通过参数动态获取:
$fn =isset($_GET['action'])?$_GET['action']:"jpg";
functionjpg(){
echo "jpg is run";
}
functionpng(){
echo "png is run";
}
functionpsd(){
echo "psd is run";
}
$fn()
递归调用:
使用实例(求阶乘):
functionjc($num){
if($num==1){
return 1;
}else{
return $num*jc($num-1);
}
}
echo jc(5)
代码重用:
require、include都是相当于把代码复制粘贴到用的场景中.但是不能同步声明,如果需要则在后面加_once.
require引入失败后面代码不能执行
include引入失败后面代码可以执行
时间:
UTC协调世界时,又称统一时间,国际协调时间
GMT是中央时区,北京在东八区,相差8个小时,所以北京时间=GMT时间+八小时
PHP时区北京为东八区,设置为PRC,默认时区为上海
//返回当前时间戳和微秒数microtime