<?php
// php运算符
// 1.算数运算符+ — * / %取余 取模 余数一定是一个正整数
// printf('5/3的余数是:%d<br>',(5%3));
// 计算闰年
// $year = date("Y");
// echo $year;
// if($year % 4 == 0 && $year %100 !==0)
// {
// echo"{$year}是闰年";
// }else{
// echo"{$year}是平年";
// }
//给定一个随机数,筛选出奇数成员组成新的数组返回?
// $arr = [45,98,55,58,72];
// $a++ 后加 先返回$a,然后$a的值+1
// ++$a 前加 $a先加1 再返回$a
// $a-- 后减 先返回$a,然后$a的值-1
// --$a 前减 $a先减1 再返回$a
// $a = 100;
// printf('$a++的值为%d,$a的值为%d<br>',$a++,$a);
// printf('++$a的值为%d,$a的值为%d<br>',++$a,$a);
// printf('$a--的值为%d,$a的值为%d<br>',$a--,$a);
// printf('--$a的值为%d,$a的值为%d<br>',--$a,$a);
// 字符串运算符,连接运算,返回连接之后的字符串
// $username = '小白菜';
// echo'微醺'.$username.'杨梅 ';
// $table = "<h1>";
// $table .='凤梨';
// $table .="</h1>";
// echo $table;
// 比较运算符 返回的是布尔类型 true false
// var_dump(10<8);
// // 用户名3-12个字符
// $username = 'kjhgfdi';
// if(strlen($username) < 12 && strlen($username) >3)
// {
// echo'用户命名合法';
// }else{
// echo'用户名需要3-12个字符';
// }
// ==比较的是运算符两边的值是否相等 不比较类型
// ===要求严格相等 值与类型都要相等返回true否则返回false
// if(10=='10')
// {
// echo'相等';
// }else{
// echo'不相等';
// }
// 逻辑运算符 || && !not返回值也是布尔型
// || 或 两边的表达式只要有一个为true 返回true
// && 且 两边的表达式必须全部为true返回true 否者返回false
// !取反
// var_dump((10 > 9)||(5 > 9));//bool(true)
// var_dump((10 > 9) && (5 > 9));//bool(false)
// var_dump((10 > 9) && (10 > 9));//bool(true)
// var_dump(empty($email));
// // 检测一个不为空!
// if(!empty($emaail))
// {
// echo'变量不为空';
// }else{
// echo'变量为空';
// }
// 后端接收数据$_GET,$_POST
// $username = $_GET['name'];
// if(isset($username) && !empty($username))
// {
// echo'用户名存在且不为空';
// }
// 三元运算符(条件表达式)?条件表达式为true时所执行的代码块:条件表达式为false时所执行的代码块
// $pwd = md5('小喵喵');
// $pwd = isset($pwd) ? $pwd : 'root';
// echo $pwd;
// 检测页码是否存在
// $page = isset($_GET['p']) ? $_GET['p'] : 1;
// php7 null合并运算符 ??目的是为了省略isset()
$page = $_GET['p']?? 1;
// echo $page;
?>
<input type="text" name="page" value="<?$_GET['p']?? 1?>">
<?php
//PHP流程控制结构
// 单一条件分支结构
// if(条件表达式)
// {
#code
// }
// 双向条件分支结构
$age = 8;
if($age > 10){
echo"小可爱你好,您已经退休".($age-10)."年了";
}else{
echo"小可爱你好,您离退休还有".(10-$age)."年了";
}
// 多条件分支结构 if elseif elseif... else
// 多条件分支结构switch
$d = date("w");//0-6
echo $d;
switch($d):
case 1:echo'今天是星期一';
break;
case 2:echo'今天是星期二';
break;
case 3:echo'今天是星期三';
break;
case 4:echo'今天是星期四';
break;
case 5:echo'今天是星期五';
break;
case 6:echo'今天是休息日';
break;
default:echo'今天是休息日';
break;
endswitch;
// php模板语法:代替了{ endif endswitch endforeach代替了 } 为了更好的代码混编
?>
<?php
// 循环结构for foreach while do..while
// php脚本由上往下执行 如果你想要一段代码重复多次执行 你可以选择循环
// // while循环 入口判断型循环
$cities = ['合肥','南京','苏州','上海'];
// echo current($cities);
// next($cities);
// echo current($cities);
// next($cities);
// echo current($cities);
// next($cities);
// echo current($cities);
while($city = current($cities)):
echo current($cities).'<br>';
// 前移指针
next($cities);
endwhile;
echo current($cities);
// var_dump(current($cities));
// reset($cities);
// var_dump(current($cities));
echo'<hr>';
// do...while出口循环 会至少执行一次代码 然后才检查条件
$i = 0;
do{
echo $cities[$i];
$i++;
}while($i < count($cities));
echo '<hr>';
// for计算循环
// for(初始条件;循环条件;更新条件)
// {
// 满足循环条件所执行的代码块
// }
for($i=0; $i<count($cities);$i++)
{
echo $cities[$i],'<br>';
}
// break continue语句
echo '<hr>';
for($i=0; $i<count($cities);$i++)
{
// break提前结束循环
if($i>1)break;
echo $cities[$i],'<br>';
}
echo '<hr>';
for($i=0; $i<count($cities);$i++)
{
// continue跳过一部分元素 选择性的输出
if($i==2)continue;
echo $cities[$i],'<br>';
}
// foreach 循环 用于遍历数组
// foreach($array as $key => $value)
// {
// 处理数组成员 $value
// }
$cities = ['合肥','南京','苏州','上海'];
foreach($cities as $city)
{
echo "<h2 style='color:pink'><center>$city</center></h2>";
};
$info = [['create_time'=>1234567899,'name'=>'年糕'],
['create_time'=>1234567898,'name'=>'汤圆'],
['create_time'=>1234567897,'name'=>'长安的荔枝熟了']];
foreach ($info as $k=>$v)
{
$info[$k]['create_time'] = date ("Y-m-d:H:m:s",$v['create_time']);
}
echo '<pre>';
print_r($info);
?>