Blogger Information
Blog 29
fans 0
comment 0
visits 18381
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
数值运算常用途径;字符串拼接注意事项;流程控制语句与导入外部文件;
CC
Original
513 people have browsed it

运算中的注意事项

  • 取整除运算
  1. <?php
  2. printf('5/3的整数是:%d',(5 / 3));
  • 取模运算(取于运算)
  1. <?php
  2. $year = date('Y');
  3. // 润年:能被4整除,但不能被100整除
  4. if ($year % 4 == 0 && $year % 100 !== 0) {
  5. printf('%d年是闰年', $year);
  6. } else {
  7. printf('%d年不是闰年', $year);
  8. }
  • 递增预算 ++$a: 先执行$a = $a + 1后, 再用$a
  1. <?php
  2. $a=10;
  3. printf('++a=%d,$a=%d',++$a,$a);
  • 递增预算$a++: 先用$a, 再执行$a = $a + 1
  1. <?php
  2. $a=10;
  3. // $a++: 先用$a, 再执行$a = $a + 1
  4. printf('$a++ = %d, $a = %d<br>', $a++, $a);
  • 赋值运算$a = $a + $b等同于$a += $b
  1. $a = 1;
  2. $b = 2;
  3. // $a = $a + $b;
  4. // echo $a;
  5. // echo '<br>';
  6. $a += $b;
  7. echo $a;
  1. <?php
  2. $a = 1;
  3. $b = 2;
  4. $a = $a + $b;
  5. echo $a;
  6. echo '<br>';
  7. // $a += $b;
  8. // echo $a;
  • 拼接运算
  1. <?php
  2. // php.cn
  3. $str = 'php';
  4. // $str = $str . '.cn';
  5. $str .= '.cn';
  6. echo $str;
  • 网页拼接运算
  1. <?php
  2. $list = '<ul>';
  3. $list .= '<li>item1</li>';
  4. $list .= '<li>item2</li>';
  5. $list .= '<li>item3</li>';
  6. $list .= '</ul>';
  7. echo $list;
  • ==、===区别

==值相等
===要求值,类型全相同(多用)

  1. <?php
  2. // "==": 只要求值相等就是true,如果二边类型不同则自动转换
  3. var_export(100 == '100');
  4. var_export(100 == (int)'100');
  5. var_export((string)100 == '100');
  6. echo '<br>';
  7. // "===": 要求值,类型全相同才返回true
  8. var_export(100 === '100');
  9. var_export(100 === (int)'100');
  10. echo '<hr>';
  • 判断两值运算,结果:小于-1,大于1,等于0
    太空船运算执行原理
  1. <?php
  2. $a = 25;
  3. $b = 15;
  4. if ($a < $b) {
  5. echo '-1';
  6. } elseif ($a > $b) {
  7. echo '1';
  8. } else{
  9. echo '0';
  10. }
  • 太空船运算符
  1. <?php
  2. $a = 25;
  3. $b = 15;
  4. echo $a<=>$b;
  • 与或非
  1. <?php
  2. // 逻辑,
  3. // 与 &&, 或 ||, 非 !
  4. // 要求二边的操作数都bool,如果不是就自己动手
  5. // 第一个,&&true永不执行,叫: 短路求值
  6. var_dump(false && true );
  7. var_dump(true && false );
  8. var_dump(false || true );
  9. var_dump(false || false );
  10. var_dump(!false, !true );
  • 实际应用
    1. <?php
    2. $username = 'admin';
    3. if (isset($username) && $username === 'admin') {
    4. echo '欢迎管理员:' . $username;
    5. } else {
    6. echo '请登录';
    7. }
    1. <?php
    2. $username = 'admin';
    3. // 为空设置
    4. if (isset($username) && $username === 'admin') {
    5. echo '欢迎管理员:' . $username;
    6. } else {
    7. echo '请登录';
    8. }
    9. echo '<br>';
    10. if (!isset($email)) {
    11. echo '没有输入邮箱';
    12. }
    三元运算在实际表单中应用
    1. #http://php.io/0125/demo21.php?p=5
    2. <?php
    3. $page = isset($_GET['p']) ? $_GET['p'] : 1;
    4. echo 'p = ' . $page, '<hr>';
    null 合并运算符, 给变量一个默认值,用在表单中
    1. <?php
    2. $page = $_GET['p'] ?? 1;
    3. echo 'p = ' . $page, '<hr>';
    粘性表单应用
    1. <?php
    2. $page = $_GET['p'] ?? 1;
    3. echo 'p = ' . $page, '<hr>';
    4. ?>
    5. <input type="text" value="<?=$_GET['p'] ?? 1?>">
  • 双引号用于模板字面量
  • 转义字符,\n: 换行, \r:回车, \t:tab, \, \$
  • nl2br函数使转义字符有作用
    1. <?php
    2. $name = '笔';
    3. $price=100;
    4. echo '品名:'.$name.'<br>价格:'.$price;
    5. // 模板字面量
    6. // 去掉连接符,单引号,变量前面加{}
    7. $template=nl2br(" 品名:{$name}\n价格:{$price}");
  • 双引号替代语法
    1. <?php
    2. // heredoc: 双引号字符串替代语法
    3. // 比较适合输出大量的多行的内部存在变量的html代码
    4. echo <<< SHOW
    5. <table border="1" width="200">
    6. <tr><th>品名</th><td>{$name}</td></tr>
    7. <tr><th>价格</th><td>{$price}</td></tr>
    8. </table>
    9. SHOW;
  • 单引号替代语法
    1. echo <<< 'SHOW'
    2. <table border="1" width="200">
    3. <tr><th>品名</th><td>手机</td></tr>
    4. <tr><th>价格</th><td>3599</td></tr>
    5. </table>
    6. SHOW;

    流程控制

    if 单分支
  1. <?php
  2. $age =25;
  3. if($age>=18){
  4. echo '成年了';
  5. }
  6. echo '<br>';
  7. // 省略大括号同时,还要加endif
  8. if($age>=18):
  9. echo '成年了';
  10. endif;
  11. echo '<br>';

if 双分支

  1. <?php
  2. $age = 14;
  3. if ($age >= 18) {
  4. echo '成年了';
  5. } else {
  6. echo '未成年';
  7. }
  8. echo '<br>';
  9. // 省略大括号同时,还要加endif
  10. if ($age >= 18) :
  11. echo '成年了';
  12. else :
  13. echo '未成年';
  14. endif;
  15. echo '<br>';
  16. // 三元运算符
  17. echo $age>=18 ?'成年了' :'未成年';

if switch多分支

  1. <?php
  2. $age = 65;
  3. if ($age >= 18 && $age < 60) {
  4. echo '成年了';
  5. } elseif ($age >= 60) {
  6. echo '退休了';
  7. // 默认分支
  8. } else {
  9. echo '未成年';
  10. }
  11. echo '<br>';
  12. // 省略大括号同时,还要加endif
  13. if ($age >= 18 && $age < 60) :
  14. echo '成年了';
  15. elseif ($age >= 60) :
  16. echo '退休了';
  17. else :
  18. echo '未成年';
  19. endif;
  20. echo '<br>';
  21. switch ($age) {
  22. case $age >= 18 && $age < 60:
  23. echo '成年了';
  24. break;
  25. case $age >= 60:
  26. echo '退休了';
  27. break;
  28. default:
  29. echo '未成年';
  30. }
  31. echo '<br>';
  32. switch ($age) :
  33. case $age >= 18 && $age < 60:
  34. echo '成年了';
  35. break;
  36. case $age >= 60:
  37. echo '退休了';
  38. break;
  39. default:
  40. echo '未成年';
  41. endswitch;

switch在增删改网页的操作

  1. <?php
  2. // switch更多用在单值判断
  3. switch ($_GET['action']):
  4. case 'insert':
  5. echo '<script>alert("新增成功")</script>';
  6. break;
  7. case 'update':
  8. echo '<script>alert("更新成功")</script>';
  9. break;
  10. case 'delete':
  11. echo '<script>alert("删除成功")</script>';
  12. break;
  13. default:
  14. echo '<script>alert("非法操作")</script>';
  15. endswitch;

php在hetml中写入

  1. <!DOCTYPE html>
  2. <html lang="zh-CN">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>Document</title>
  7. </head>
  8. <body>
  9. <hr>
  10. <h3>以下是html中的php </h3>
  11. <?php $age = 15 ?>
  12. <?php if ($age >= 18 && $age < 60) : ?>
  13. <p>恭喜,到了刑法规定的年龄</p>
  14. <?php elseif ($age >= 60) : ?>
  15. <p>监外执行,不要浪费国家粮食了</p>
  16. <?php else : ?>
  17. <p>听说,现在刑事责任年龄降到了14周岁了</p>
  18. <?php endif
  19. ?>
  20. </body>
  21. </html>

while

  • 入口判断型
    1. <?php
    2. $city= ['深圳','广东','珠海'];
    3. // echo count($city);
    4. // 1. 条件循环
    5. // 1.1. 入口型 while(){...}
    6. // 1. 循环条件的初始值
    7. // $i 是要遍历的数组的索引,默认从0开始
    8. $i =0;
    9. while ($i <count($city)){
    10. echo $city[$i],'<br>';
    11. $i++;
    12. }
    for循环
  1. <?php
  2. $city= ['深圳','广东','珠海'];
  3. // 计算式, for
  4. // for()可以视为while的简化
  5. // for (初始条件; 循环条件; 更新条件)
  6. // for ($i = 0;$i < count($cities); $i++) {
  7. // echo $cities[$i], '<br>';
  8. // }
  9. for ($i = 0;$i < count($city); $i++) :
  10. echo $city[$i], '<br>';
  11. endfor;
  12. echo' <br>';
  13. // 用的更多的是foreach遍历数组
  14. foreach($city as $citys){
  15. echo $citys;
  16. }

导入外部文件

  • require === include + exit;
  • require多用
  1. <?php
  2. // include 'index.html';
  3. // exit;
  4. require 'index.html';
Correcting teacher:天蓬老师天蓬老师

Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post