本文最后更新于459天前,其中的信息可能已经过时,如有错误请在评论区悄悄告诉我~~~
一、程序结构
<?php
?>
不可以嵌套使用,且各字符之间不能出现空格
注释:
- //表示单行注释
- /* … */表示多行注释
Vs code注释快捷键ctrl+?
二、常量与变量
常量:在程序中不可改变其值的名称
定义:
- define(常量名称[全大写],常量的值)。
- const 常量名=常量值
区别:
define可以在代码段中任意位置使用,const只能在php代码的最顶端
变量:
- 必须以“$”作为开头,由数字、字母和下划线组成,且不能以数字开头
- 严格区分大小写
- 定义即可直接使用
可变变量:使用$$表示的变量(容易出现安全漏洞)
系统变量(关联数组):
$_POST :对应表单method=post
$_GET :对应表单method=get
$_COOKIE :http cookie传递的数据
$_FILES :文件
三、输出语句
echo(),var_dump()
当需要多个字符串拼接输出时,有两种选择,一种.一种是,
输出方式:
- 直接输出单个变量的值 echo $name;
- 拼接式输出:echo “我的名字是:”,$myname; echo “hello”,$name,”!”;
- 在字符串中直接输出 “<p> my name is {$myname}.</p>” {}内部的$之前,不能有任何符号
四、控制结构
1、分支结构
单分支
if(条件表达式){
代码段
}
双分支
if(条件表达式){
代码段
}
else{
代码段
}
多分支:
if(条件表达式1){
代码段1
}
else if(条件表达式2) {
代码段2
}
...
else if(条件表达式n) {
代码段n
}
else{
代码段
}
switch($n){
case 1:{
代码段1;
break;
}
...
case x:{
代码段x;
break;
}
default:{
代码段;
}
}
例题:
根据年份月份,输出是否是闰年,月份有多少天
思路:
- 直接使用变量赋值的形式来确定年和月,共两个变量
- 闰年判断:能被4整除且不能被100整除,能被400整除
- 2.1如果是闰年:使用一个变量来表示是否是闰年,$flag =1是闰年,2月有29天,
- 2.2如果不是闰年:$flag=0,2有28天
5. 月份的判断:多分支(switch),第一类:4,6,9,11:30天,第二类1,3,5,7,8,10,12:31天,第三类:2,判断是否是闰年 【分支结构嵌套】
6. 输出结果
测试样例:
输入:2020,2
输出:2020年是闰年,2月有29天。
7. 例子:
$year = 2000;
$month = 2;
if ($year % 4 ==0 && $year % 100 !=0 || $year % 400 == 0){
$flag = 1;
}
else{
$flag = 0;
}
switch($month){
case 4:
case 6:
case 9:
case 11:
$day = 30;
break;
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
$day = 31;
break;
case 2:
if ($flag == 1){
$day = 29;
}
else{
$day = 28;
}
break;
}
if ($flag == 1){
echo"{$year}年是闰年,{$month}月有{$day}天";
}
else if($flag == 0){
echo"{$year}年是平年,{$month}月有{$day}天";
}
2、循环结构
循环:在程序中重复执行某个功能(简单操作)而设置的一种程序结构
// for 、foreach()、while、 do while
// for(表达式1;表达式2;表达式3){
// 循环体
// }
$sum = 0;
for($n=1;$n<=100;$n++){
$sum = $sum + $n;
}
echo $sum;
五、数组
1. 数组
$sum = 1;//只能存储一个数据
$arr=[1,2,3]//存储多个数据,线性数据结构(线性数组,一维数组(一个下标)),二维数组[1,2,3,4,5,6,7,8,9]3*3(有行标有列标)
2. 数组的定义
方法一
$arr1 = array('jack',20,'03220950');
var_dump($arr1);
Var_dump常用于数组数据的输出,会把数组内的详细内容输出
方法二
$arr2 = ['apple',2.5,10.5,true];
echo $arr2[0];
获取数组的长度:
count(数组名)
PHP中数组的分类:
- 普通数组(索引数组):通过下标(索引)就可以访问到数组元素的数组。
- 关联数组:带有指定键的数组,使用键值对来访问数组,使用key=>value的方式设置各个数组元素。
$arr3 = array("name"=>"jack","age"=>20,"id"=>'03220950');//定义一个关联数组
var_dump($arr3);
echo $arr3["id"];//访问关联数组中的元素
- 混合数组:索引+关联
- 二维数组
3. 数组的遍历
$admin = 0;
$arr4 = array("admin"=>"1");
foreach($arr4 as $key=>$value){
$$key = $value;
}
foreach($arr1 as $value){
echo $value."<br>";
}