PHP基础:if 和 switch
程序员文章站
2022-03-03 22:05:13
...
if 和 switch
1、if(){} 条件
//(1)and && 与 两个条件同时为真,才是真
$age1=19;
if($age1>=18 && $age1<=45){
echo '青壮年';
}
//运行结果:青壮年
echo '<hr />';
//(2)or || 或
$tel= '';
$mob='';
if(!$tel || $mob){
echo '手机和电话必填一个';
}
//运行结果:手机和电话必填一个
echo '<hr />';
//(3)xor 亦或
$p1='男';
$p2='女';
if($p1=='男' xor $p2=='男'){
echo '异性可以结婚';
}else{
echo '同性不能结婚';
}
//运行结果:异性可以结婚
echo '<hr />';
//(4)! 取反
$name='';
if(!$name){
echo '姓名不能为空';
}
//运行结果:姓名不能为空
echo '<hr />';
2、switch(){} 流程判断
$age=77;
switch($age){
case $age <=6:
echo '幼儿';
break;
case $age >=6 && $age <=12:
echo '少儿';
break;
case $age >=13 && $age <=17:
echo '青少年';
break;
case $age >=18 && $age <=45:
echo '青壮年';
break;
case $age >=46 && $age <=69:
echo '中年';
break;
default:
echo '老年';
}
//运行结果:老年
php8.0 改动和新增
-
php8.0 改动
var_dump(0=='1234566');
//运行结果 bool(false)
//php8.0之前为真
-
match(){} php8.0 新增 严格区分大小写
$nums=2;
echo match($nums){
1=>'未审核',
2=>'已审核',
3=>'拒绝审核',
default=>'未知状态'
};
//运行结果:已审核
逻辑函数
//isset() 只要存在即为真 0、''、false 没有变量或null为假
//$name2='';
if(!isset($name2)){
echo '没有姓名';
}
//运行结果:没有姓名
echo '<hr />';
//empty() null、0、''、false 为真
$name3='';
if(empty($name3)){
echo '没有姓名';
}
//运行结果:没有姓名
echo '<hr />';
$arr=[];
if(!empty($arr)){
echo '执行';
foreach ($arr as $v){
}
}
echo '<hr />';
echo gettype($arr);//获取变量类型
// is_string()判断类型是否为字符串
//is_int 判断整型 常用
//is_float
//is_bool
//is_null
//is_array 常用 如果是数组循环,不是数组不循环
//is_object
实力演练 计算器
<?php
//获取传值并判断传值是否存在
$num1= isset($_GET['num1']) ? $_GET['num1'] :'';
$opt= isset($_GET['opt']) ? $_GET['opt'] :'';
$num2= isset($_GET['num2']) ? $_GET['num2'] :'';
?>
<!doctype html>
<html lang="zh_cn">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>计算器</title>
</head>
<body>
<div class="box">
<h1>计算器</h1>
<form action="" method="get">
<input type="number" name="num1" value="<?php echo $num1; ?>" placeholder="请输入第一个数字">
<select name="opt">
<option value="+" <?php if($opt=='+'){echo 'selected';} ?>>+</option>
<option value="-" <?php if($opt=='-'){echo 'selected';} ?>>-</option>
<option value="*" <?php if($opt=='*'){echo 'selected';} ?>>*</option>
<option value="/" <?php if($opt=='/'){echo 'selected';} ?>>/</option>
<option value="%" <?php if($opt=='%'){echo 'selected';} ?>>%</option>
</select>
<input type="number" name="num2" value="<?php echo $num2; ?>" placeholder="请输入第二个数字">
<input type="submit" value="计算">
</form>
</div>
</body>
</html>
<?php
//print_r($_GET);
//判断输入数字是否小于0
if($num1<0 ||$num2<0 ){
echo '输入的数字不得小于0';
exit();
}
//判断传值是否为空
if(!empty($_GET)){
//判断运算符号
switch ($opt){
case '+':
$num=$num1+$num2;
break;
case '-':
$num=$num1-$num2;
break;
case '*':
$num=$num1*$num2;
break;
case '/':
$num=$num1/$num2;
break;
case '%':
$num=$num1%$num2;
break;
}
//判断运算结果是否为0
if(!$num==0){
echo $num1 . $opt . $num2 .'的运算结果是:'. $num;
}else{
echo '计算结果不得为0';
}
}
?>
效果图