循环相关的语句 break
基本的概念:表示结束当前的for、while、do...while、switch,流程,可以给一个数字,表示退
出到第几层。
快速入门案例:
for($i=0;$i<13;$i++){ echo'$i='.$i."<br/>"; if($i==10){ break; } }
快速入门的案例2:
$i=0; while(++$i){ switch($i){ case 5: echo"quit at 5<br/>"; break; case 10: echo"quit at 10<br/>"; break 2; default: break; } } echo'$i='.$i;
结果是:
quit at 5
quit at 10
$i=10
分析图:
从上面的案例,我们得到几个结论:
break 语句 默认跳出1层
break 语句, 后面带的数字,不能超过实际可以跳出的循环层数,否则,会报fatal error
循环相关语句-continue
基本概念:continue 用于结束本次循环剩余代码,从新开始新的一次循环(如果条件为真,
就继续执行),continue后面也可以带数字,表示从第几次循环重新开始
快速入门:
for($i=0;$i<13;$i++){ if($i==10){ continue; } echo'$i='.$i."<br/>"; }
如果
$i=0
$i=1
$i=2
$i=4
$i=5
$i=6
$i=7
$i=8
$i=9
$i=10
$i=11
$i=12
hello
流程
goto 语句
基本概念:通过goto语句 我们可以将程序跳转到指定的地方去执行
goto 标签;
标签:
语句;
快速入门案例:
goto a; echo 'aa'; a: echo 'bb';
快速入门案例2:
for($i=0,$j=50;$i<100;$i++){ while($j--){ if($j==17) goto end; } } echo "i=$i"; end: echo 'j=17'.$i."||".$j;
结果:
j=17
php中的常量
说明:
所谓常量,我们可以理解成就是特殊的变量:体现在
定义常量前面不需要S;
常量一旦定义,则不恩能够修改其值
常量在定义的时候,就需要它赋值。
常量可以通过define 或者 const
常量的名称,我们一般说是全部大写,然后用下划线间隔
什么时候需要使用常量:在程序中我们不希望某个值变化,则考虑使用常量,比如圆周率,税率
快速入门案例:
<?php //第一种方法 define("TAX_RATE",0.08); echo TAX_RATE; //第二种方法(php5.3) const TAX_RATE2=0.1; echo '-'TAX_RATE2: ?>
函数讲解
提出一个问题?
请大家完成这样一个需求:
①输入俩个数,再输入一个运算符(+,-,*,/),得到结果。
如果我们不考虑使用新的技术,用我们现在的知识结构,完成
<html> <head> <meta http-equiv="content" content="text/html;charset=utf-8"/> </head> <?php //请大家完成这样一个需求: //①输入俩个数,再输入一个运算符(+,-,*,/),得到结果 $num1=34; $num2=90; $oper='-'; //$res 表示结果 $res=0; switch($oper){ case "+": $res=$num1+$num2; break; case "-": $res=$num1-$num2; break; case "*": $res=$num1*$num2; break; case "/": $res=$num1/$num2; break; default: echo '运算符号有误!'; } echo "计算结果是=".$res; ?> </html>
从该代码分析,我们发现,如果别的页面也需要这样的功能,则代码的复用性不好---->
函数引出
现在我们使用函数,来快速体验好处,示意图:
funcs.php(这个文件,我们定义了一个函数)
<?php //我们一个计算,+ - * / 的代码集合->函数 //1.function是一个关键字 //jisuan函数名(由程序员取名) //$num1,$num2,$oper 是函数的参数列表(形参) function jiSuan($num1,$num2,$oper){ //$res 表示计算的结果 $res=0; switch($oper){ case "+": $res=$num1+$num2; break; case "-"; $res=$num1-$num2; break; case "*"; $res=$num1*$num2; break; case "/": $res=$num1/$num2; break; default: echo '运算符号有误!'; } //表示返回一个结果 return $res; } ?>
func()1.php(该文件使用到了我们定义的函数)
<html> <head> <meta http-equiv="content-type" content="text/html;charset=utf-8"> </head> <?php //引入你需要的php文件 require 'funcs.php'; //请大家完成这样一个需求: //①输入俩个数,在输入一个运算符(+,-,*,/),得到结果 $num1=34; $num2=90; $oper="*"; //以后,要计算的结果,则可以直接调用函数 $res=jiSuan($unm1,$num2,$oper); echo"计算结果=".$res; ?> </html>
谈论函数之细节,和其运行原理
自定函数的基本语法结构
//参数列表,用处是接受数据
function 函数名(参数列表){
//函数体;(完成某一个功能的指令集合,这个必须有)
//return 语句;(return 语句主要的用处是返回一个结果
,这个可以没有)
}
练习:定义一个函数,可以打印不同的函数
function printTest($n,$name){
}
Php页面相互调用的知识点
目前我们有这样的一个需求:
(1) a.php 页面要使用b.php 定义的函数,我们可以使用 如下指令
require require_once include include_once
举例 require 的用法
<?php require('要引入的文件名'); $filePath="abc.php"; require $filePath; require '要引入的文件名(路径)'; ?>
案例说明:
<?php //1 //require 'b.php'; //2.通过变量引入 //$fileName="b.php"; //require $fileName; //3 require('b.php'); //这里就是所谓的调用函数-》怎样理解函数的调用 abc(); echo 'hello iii'; ?>
require 和 require_once 区别
这俩个区别为,前者遇到即包含文件,后者会判断是否已经包含过了,如果包含过了,则不再包含文件
。一可以节省资源,二可以避免重复定义错误。
redeclare:再次声明
include:包含,包括
举例说明;
include 和 include_once 的区别
他们的作用和功能都可以把一个页面,包含到另一个页面
基本用法
<?php inclue('被包含的文件'); include '被包含的文件'; include $filePath; ?>
区别:
这俩个区别为,前置include 遇到即包含文件,后者include_once 会判断是否已经包含过了,
如果包含过了,则不再包含文件。一 可以节省资源,二 可以避免重复定义的错误。
证明:
再谈include 和 require 区别(同时 include_once 和 require_once 区别)
相同的地方就是,都是可以引入别的页面
不同的地方是:include 如果出现了错误,会儿继续执行,require 出现错误,则会终止程序。
证明:
小结:我们应当使用哪个?我们做项目的时候,基本上使用的require_once
->注意我们的require_once/require .....应当防在php最前面
如何理解函数的调用过程
<?php //我们一个计算,+ - * / 的代码集合-》函数 //1.function 是一个关键字 //2.jisuan 函数名(由程序员取名) //3.$num1,$num2,$oper是函数的参数列表(形参) function jiSuan($num1,$num2,$oper) //$res 表示计算的结果 $res=0; switch($oper){ case "+": $res=$num1+$num2; break; case "-": $res=$num1-$num2; break; case "*": $res=$num1+$num2; break; case "/": $res=$num1/$num2; break; default: echo '运算符号有误!'; } //表示返回一个结果 return $res; $res=jiSuan($a,$b,$type); echo"res=".$res; ?>
函数调用的流程图:
一个通俗理解图:
为了加深大家对函数调用的理解我们,举例
<?php function abc($n){ if($n>2){ abc(--$n); }else{ echo '$n='.$n."<br/>"; } } abc(4); ?>
函数自己调用自己-》这个就称为递归调用
函数的深入使用讨论
函数的基本结构
function 函数名(参数列表){
//函数体
//return 语句;
}
①参数列表可以是多个参数
②参数可以多个,同时,其数据类型可以是php语言支持的任意类型
③函数名开头的字母,以_或者A_Z 或者 a-z,不要用数字或者特殊字符开头
④函数名不区分大小写
function Abc(){}和function abc() 是同一个函数。
⑤一个自定义函数中的变量时局部的,函数外部生效
案例:
function abc3(){
$a=45;
echo 'a='.$a;
}
abc3();
echo'aa='.$a;//
这里会报一个错误:
Undefined variable:a
☞ 在php中有三种提示
notice:注意
waring:警告
error:错误
⑥使用global 全局变量的时候,可使用在函数外的变量
案例,和分析图
$a=12; function abc3(){ //global $a;//我要在abc中使用到外层$a; $a+=45; } abc3(); echo $a;
分析图:
⑦ 如果在函数中,我们不希望使用某个变量,或者是希望彻底的不再某个变量,则可以
使用 unset (变量名);将该变量彻底删除
$a=12; function abc3($a){ unset($a);//表示不再abc3函数范围内,不在使用$a,后面需要全新定义; $a=45; } abc3($a); echo $a;
⑧ 在php 函数中,我们可以给某些参数,赋一个默认的值。
案例说明:
function abc($b,$a=2){ $res=$a+$b; return $res; } $e=70; echo abc($e)."||"; echo abc($e,90); $f=70; echo abc($e,$f);
⑨ php 传递变量的时候,默认是值传递,如果需要引用(地址)传递,可以使用&变量名;
举例说明;
①②③④⑤⑥⑦⑧⑨⑩