目录
-
概述
-
注释
-
输出
-
php基础语法
-
变量
-
运算符
-
条件与分支
-
循环
-
数组
-
字符串
-
时间
-
全局数组
-
jsonp方法
-
header方法
-
session方法
-
cookie方法
-
注释
-
输出
概述
什么是PHP1. PHP(PHP: Hypertext Preprocessor)即“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入HTML中。
lamp
2. LAMP是 Linux+Apache+Mysql+Perl/PHP/Python 的简称
注释
单行
#
//<?php <?php # $i=1; // while($i<100){ // echo $i,"<br>"; // $i++; // } #for for($i=100;$i>0;$i--){ echo $i,"<br>"; } ?> ?>
多行
/* */<?php /* $i=1; while($i<100){ echo $i,"<br>"; $i++; }*/ for($i=100;$i>0;$i--){ echo $i,"<br>"; } ?>
输出
echo "","";
print()
printf("模板",变量)printf("大家好我的名字是%s,今年%.3f 岁了!",$a,$b)
phpStudy语法
phpStudy 2018版本(php一键安装包),集成PHP7,16种组合,超全大合集是一种非常适合所有人的版本,phpstudy2018是一个非常友善的版本,一次性安装,不需要配置就可以使用,是非常好用的PHP调试环境。
启动名编辑器创建一个php文件并输入以下代码<?php echo "你好,世界!"; ?>
当我们在网页中打开查看源代码的时候也是有
你好,世界!
在这个例子中我们可以发现PHP代码段以<?php开头,以 ?>结尾,中间则是PHP代码
每一个指令集以;符号结束,一旦缺失则会报错!!!
浏览器运行PHP代码段之后的结果在浏览器中不能查看到php文件的原始代码
当然要输出标准html代码可以把上面的例子完善为<html> <head> <title>PHP 测试</title> </head> <body> <p> <?php echo "你好!"; ?> </p> </body> <html>
可见php可以和html代码混写,echo是PHP内置的一个指令,多用于输出一个活多个字符串,和echo类似的还有print
对比学习js与php语法基本一致
js php
js代码用<script > </script>包括 php代码用<?php ?>包括
js用document.write输出 php用户echo输出
js用;结束一行代码 php必须用;结束一行代码
变量声明:不能以数字开头,不能是关键字,由字母数字下划线组成
例:
<?php $name="mumu" ?>
php变量类型
bool TURE FALSE 布尔型
str “” 字符串
int 123 数字
float 456.56 浮点型可以使用var_dump()来查看变量的类型。
注:使用变量的时候也要带上$符号!!!php类型的强制转换
(int)(变量):转换为数字类型
(string)(变量):转换为字符串类型
(float)(变量):转换为浮点型
(bool)(变量):转换为布尔型
运算符号
运算符下面演示:
<?php $x=10; $y=6; echo ($x + $y); // 输出16 echo '<br>'; // 换行 echo ($x - $y); // 输出4 echo '<br>'; // 换行 echo ($x * $y); // 输出60 echo '<br>'; // 换行 echo ($x / $y); // 输出1.6666666666667 echo '<br>'; // 换行 echo ($x % $y); // 输出4 echo '<br>'; // 换行 echo -$x; ?>
分支
条件与分支
流程控制用
if(){ }elseif(){ }else{ }
循环
while循环
while循环是PHP中最简单的循环,其基本格式为:while (expr){ statement }
该语法表示,只要expr表达式为TRUE,那么就一直执行statement直到expr为FALSE为止,statement表示要执行的动作或逻辑。
例:<?php $i = 1; while ($i <= 10) { echo $i; $i++; } ?>
该例子循环输出1到10。
for循环
for循环是PHP中更为复杂的循环,其语法如下:for (expr1; expr2; expr3){ statement }
下面的例子依旧是输出1到10:
<?php for ($i = 1; $i <= 10; $i++) { echo $i; } ?>
创建数组
使用 array() 语言结构创建数组:
<?php $arr_age1 = array(18, 20, 25); // 或者: $arr_age2 = array("wang"=>18, "li"=>20, "zhang"=>25); // 空数组: $arr_age3 =array(); ?>
删除
unset($a1)
unset($a1[2])
使用 unset() 函数来销毁一个数组单元或整个数组:<?php unset($arr_age1[0]); unset($arr_age1); ?>
添加
$a1[]=88;
$a2[“leg”]=2;
遍历
foreach($arr as $value){}
例:<?php $arr_age = array("wang"=>18, "li"=>20, "zhang"=>25); foreach ($arr_age as $age) { echo $age,'<br />'; } ?>
上述语法中,每次循环将当前单元的值赋给 $value 并且数组内部的指针向前移一步。在第二种语法格式中还将当前单元的键名也会在每次循环中赋给变量 $key。
foreach($arr as $key=>$value){}例:
<?php $arr_age = array("wang"=>18, "li"=>20, "zhang"=>25); foreach ($arr_age as $key=>$age) { echo $key,': ',$age,'<br />'; } ?>
数组常用方法
array_push()添加
array_pop()删除
sort()正序
rsort()倒序
array_search()查询
array_reverse()翻转
implode()连接为字符
explode()字符串分割为数组
shuffle()乱序
natsort()自然排序
字符串
获取
substr(string,start,len)
从start截取len位字符<?php $str ="山不在高,有仙人居住就有盛名;水不在于深"; $sub=substr($str,0,30); echo $sub; ?>
输出为山不在高,有仙人居住
strstr(string,str)
截取str后面的字符sterchr(string,str)
从后面查找str,并截取后面的字符替换
str_replace(search,replace,string)
用replace替换search字符<?php $str ="我爱我的祖国,我的祖国是中国"; $str2 =str_replace("祖国","国家",$str); echo $str2; ?>
输出为我爱我的国家,我的国家是中国
计算
strlen()
获取字符串长度
strpos(string,str,start)
查找字符串str出现的位置
strrpos(string,str)
从后查找str出现的位置
时间
配置时间php.ini
date.timezone=PRC
time()<?php echo time(); ?>
获取1970-1-1到今天的秒数
date("Y-m-d H:i:s",time(),);
显示格式如 2008-12-01 12:01
格式化时间戳
strtotime("2021-10-20");<?php $d1=strtotime('2021-10-19'); $d2=strtotime('2021-10-20'); echo $d1,"---",$d2,"<br/>"; echo ($d2-$d1)/3600; ?>
通过字符串转换为时间戳
全局数组
$_GET[]
获取所有get请求的参数
$_POST[]
获取所有的post请求参数
$_REQUEST[]
获取所有的请求
jsonp方法
json_encode()
数组转jsonp<?php echo json_encode(); ?>
json_decode()
字符串转数组
header方法
header("Content-type:application/json");
返回json格式<?php header("Content-Type:application/json;charset=utf-8"); ?>
header("Content-type:text/html;charset=utf-8");
返回html格式指定 编码
session方法
1.session是用来保持客户端与服务器端会话的<?php session_start();//开启session ?>
2.session的值存储在服务器
3.session是通过cookie来传递给客户端4.必须写在前面
cookie方法
存储在客户端的数据,可以设置过期时间
服务器或者客户端都可以修改设置cookie
每次http请求都会携带cookie
http响应也会携带cookie