條件分支與迴圈結構學習

宋霸霸發表於2024-07-04
<?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);

?>

  

相關文章