美文网首页
php day4(2019.4.10)

php day4(2019.4.10)

作者: 满天繁星_28c5 | 来源:发表于2019-04-10 20:16 被阅读0次

一、 循环结构

1.while

当型循环,当满足指定的条件时,循环执行相应的语句块

1) 语法

while(条件){


循环体


}

2) 流程

先进行条件判断,满足条件,执行循环体

再进行条件判断,满足条件,执行循环体

。。。。。

再进行条件判断,不满足条件,退出循环。

3) 应用1计算100以内的整数和

$i = 1;
    $sum = 0;
    while($i<=100){
        $sum = $sum + $i;
        $i++;   
    }
    echo $sum;
    
    1<=100 true
    $sum = 0 + 1 ; $sum = 1;
    $i =2 
    
    2<=100 true
    $sum = 1 + 2 ; $sum = 3;
    $i =3
    
    3<=100 true
    $sum = 3 + 3 ; $sum = 6;
    $i =4
    
    .....
    
    99<=100 true
    $sum = ????+ 99 ;
    $i=100
    
    100<=100 true
    $sum = ????+ 100 ;
    $i=101
    
    
    101<=100 false
    退出循环

4) 应用2百钱买百鸡

鸡翁一值钱五,鸡母一值钱三,鸡雏三值钱一。百钱买百鸡,问鸡翁、鸡母、鸡雏各几何?

--张建丘《算经》

假设 公鸡数x, 母鸡数为y,小鸡数为z;


5x+ 3y +z*1/3 = 100  ①
x +y + z =100 ②
②*3 -1  消y 
       3x + 3y + 3z = 300;
5x+ 3y +z*1/3 = 100
-2x  + z*8/3 = 200;
      z = 75 +x*3/4;
             y = 100 -x -z;
             y = 100 -x -75-x*3/4
              = 25-7/4x  >0
         0  =<   x  <=14 
image.png

2.do while 循环

1) 语法

do{


循环体


}while(条件);

2) 流程

先执行循环体,然后进行条件判断,如果满足条件,继续执行循环体。

3) while 和do while的区别

初始条件不满足,do while 执行一次循环体,while则不执行。

应用

求两个数的最大公约数。更项取余,直到余数为零。


image.png
image.png

4) 循环体结构

一个循环的几个要素

初始值: 循环变量的初始化值

条件表达式:循环满足的条件

循环体: 循环执行的动作

步进值:循环的递增量

image.png

3.for循环

1) 语法

for(初始化表达式;条件表达式;增量表达式){


循环体


}

2) 应用九九乘法表

11=1 12=2 22=4 13=3 23=6 33=9 14=4 24=8 34=12 44=16 15=5 25=10 35=15 45=20 55=25 16=6 26=12 36=18 46=24 56=30 66=36 17=7 27=14 37=21 47=28 57=35 67=42 77=49 18=8 28=16 38=24 48=32 58=40 68=48 78=56 88=64 19=9 29=18 39=27 49=36 59=45 69=54 79=63 89=72 9*9=81

<table width="800" border="1">
        <?php
            $str = '';
            //从9开始反写:$i=9; $i>=1; $i--
            for($i=1; $i<=9; $i++) {
                $i%2==1 ? $str .= '<tr bgcolor = "red">' : $str .= '<tr>';
                    for($j=1; $j<=9; $j++) {
                        $str .= '<td>';
                        if ($j<=$i)
                        $str .= $i .'x' . $j . '=' . $i*$j;
                        $str .= '</td>';
                    }
                $str.='</tr>';
            }
            echo $str;
        ?>
    </table>

3) break和continue

  • break :跳出当前循环,终止for循环。

当前循环体重break语句后面的代码不执行。

break n 实现跳出指定层次的循环。

break 默认跳出一层循环

  • continue :跳过当前循环体的执行,继续下次循环
image.png
image.png
image.png
image.png

二、 流程控制语句的替代写法

1) 语法

将 if ,while ,for 左大括号替换为 :

右大括号替换为

endif;

endwhile;

endfor;

image.png
image.png

三、 文件载入

多个页面均可使用的代码,可以放在公共文件中,

需要调用的时候,引入对应的文件即可。

提高代码的复用率

1.语法

include/require/include_once/require_once “文件路径”
image.png

4.原理

把代码放在文件包含的位置,执行。

5.两种路径

1) 相对路径

. 当前脚本所在的目录

.. 当前脚本的上一级目录

image.png

10) 绝对路径

C:\Users\Administrator\Desktop\bjquanzhan\day3bj

image.png
image.png

6.文件的嵌套包含

将file3.php 引入到file2.php 将file2.php 引入到file1.php

image.png image.png image.png image.png

7.include 和require区别:

include 引入文件失败,返回警告信息,后续代码继续执行。

image.png

require 引入文件失败,返回致命错误,后续代码不执行。

image.png

8._once 作用

只载入一次,不重复载入。

四、 错误处理

人无完人,生活中难免会犯错,

我们在程序开发中也会遇到各种各样的错误,为了提高开发效率。PHP给我提供了一套完整的错误处理的机制,可以对PHP错误进行控制。

1.错误分类

犯罪的级别:

小偷小摸

抢劫

杀人放火

1) 语法错误(解析错误,parse error)

解析语句时,由于语句不和代码规范,因此发生解析错误,后续代码不执行,比如:缺少语句结束标志。

image.png
image.png

2) 运行时错误(run-time errors)

程序语法没有错误,但是程序运行过程中出现了错误,如:出现了未定义的变量和常量等。

image.png

3) 逻辑错误

用户自行制定的错误,如与预期的数据不一致等情况。如数据不合法。

image.png

9.错误代号

地址:wamp-php.ini

image.png

1) 系统错误

E_NOTICE:通知性错误,当发生通知性错误时,会弹出一个提示信息。它不会中断程序的继续执行,如使用了未定义的变量或者常量。

image.png

E_WARNING:警告性错误,弹出一个警告信息,也不会中断程序的继续执行,

如:include 包含了一个不存在的文件。

函数应该传参数但是未传参数。
image.png

E_ERROR :

FATAL ERROR,当发生致命性错误后,会弹出一个致命性错误的信息,并中断程序向下执行。

如:require包含一个不存在的文件。

调用一个不存在函数。

image.png

2) 用户错误

用户级别产生的错误

E_USER_NOTICE

E_USER_WARNING

E_USER_ERROR

3) 其他

E_ALL 所有错误

10.错误的触发

1) 系统自动触发

除了用户错误意外,其他错误都是由系统自动触发的 。

3) 手动触发

手动触发相应的错误程序,

一般是用户级别的错误。

触发函数,

trigger_error(‘自定义的错误信息’,[错误级别]);

image.png

4.错误的显示设置

1) 打开错误提示显示开关

①PHP.ini文件

display_errors =On

开发阶段设为On,产品上线后设为Off;

②可以在脚本中执行ini_set函数

ini_set(选项,值);

在脚本执行周期内,选项设置有效,相当于修改配置文件。

无法修改PHP.INI文件时,可以采用该方式。

image.png
image.png

2) 显示错误信息的级别

①php.ini中配置error_reporting选项

image.png
image.png

②ini_set(‘error_reporting’,错误代号)

image.png

③error_reporting(错误代号)

image.png

5.错误日志设置

项目一旦上线,需要记录错误日志。

可以通过ini_set(‘log_errors’,’Off’)关闭。

image.png

1) 错误日志默认路径****(error.log)

image.png
image.png

2) 自定义错误日志存储路径

ini_set(‘error_log’,’路径’);

image.png
image.png
image.png

6.自定义错误处理

出现错误时,不触发系统的错误处理成立,

触发用户自定义的错误触发程序。

1) 设置用户自定义处理函数

set_error_handler(错误处理回调的函数名,[错误级别]);

2) 定义错误处理函数

函数四个参数,

顺序呢分别为:错误行号,错误提示字符串,出错的文件名,错误行号。

image.png

3) 触发错误

image.png

相关文章

  • php day4(2019.4.10)

    一、 循环结构 1.while 当型循环,当满足指定的条件时,循环执行相应的语句块 1) 语法 2) 流程 先进行...

  • 东湖掠影

    2019.4.10

  • 看樱花,不必去武大

    2019.4.10 东湖公园

  • 香径

    2019.4.10卜未之

  • 2019.4.10

    常青c 字数 507 · 阅读 常青c 字数 488 · 阅读 姓名:常青 公司:宁波锃威包装有限公司 【日精进打...

  • 2019.4.10

    《日精进打卡》 姓名:王辉 公司名称:惠康国际 《幸福精进》学习营第50期乐观一组 【今日经典诵读】 1)《六项...

  • 2019.4.10

    早上5.53起床,昨晚睡得很好。 这周几个晚上回家得比较迟,没有写反思日记。因为事情多了,早上做冥想时杂念也很多,...

  • 2019.4.10

    有时的不果断,会成为另一条路的终点。

  • 2019.4.10

    今早一进教室一新就说昨晚牛牛不洗澡,连说了几次,牛牛听了,生气,不进教室,哄他也不进,后来自己跑到书包房角落里去躲...

  • 2019.4.10

    前两日细雨绵绵,气温骤降,让人们都有了由春入秋的错觉。今天天气回暖,一缕缕阳光驱散了寒冷的空气,带来了柔和的春光。...

网友评论

      本文标题:php day4(2019.4.10)

      本文链接:https://www.haomeiwen.com/subject/gszoiqtx.html