批改状态:合格
老师批语:要是能加上自己的总结内容就更完美了!
流程控制实战与常用的数组函数(一)
时间:2018年8月23号 天气:晴
1. 编程: 实例演示while(),do~while()
<?php
/**
* while:入口判断
* do~while:出口判断
*/
$n=0;
while ($n<10) {
echo (++$n < 10) ? $n . ',' : $n;
}
echo'<hr>';
$b=0;
do{
echo (++$b < 10) ? $b . ',' : $b;
}while($b<10);点击 "运行实例" 按钮查看在线实例

2. 编程: 函数的参数与作用域
<?php
header("Content-type:text/html;charset=utf-8");
/**
* 函数的作用域和参数
*/
//无参函数
function study(){
return 'good good study, day day up!';
}
echo study();
echo '<hr>';
//一个参数
function study1($a){
return $a .' '.'today is Monday.';
}
echo study1($a='today is sunny,');
echo '<hr>';
//两个参数及以上,注意参数的排序位置,有可选参数必须往前放
function study2($a,$b,$c,$d='还去一功名'){
return $a.'<br>'.$b.'<br>'.$c.'<br>'.$d;
//return func_num_args();
// return func_get_arg(0);
// return print_r(func_get_args(),true);
}
echo study2("千里不留行","十步杀一人",'事了拂身去'),'<br>';
echo'<=======作用域=======>','<br>';
$c='我在函数外定义';
function demo()
{
//global $c;
return '我能调用$c吗?'.$GLOBALS['c'].',我是用绑定全局变量数组$GLOBALS["c"]';
}
echo demo();点击 "运行实例" 按钮查看在线实例
3. 编程: 数组常用的键值操作与指针操作
<?php
/**
*
*/
echo'<pre>';
header("Content-type:text/html;charset=utf-8");
//数组的键值操作
$user=['id'=>01,'name'=>'php','salary'=>'$6666','firm'=>'狗东'];
echo '<pre>'.print_r($user,true);
//in_array()判断是否存在某个值。
echo in_array('php',$user)?'存在':'不存在';
echo'<hr>';
//in_key_exits()判断某个键值是否存在
echo array_key_exists('php',$user)?'存在':'不存在';
//array_value()以所引的方式返回数组的值组成的新数组
echo '<hr>';
echo print_r(array_values($user),true);
//array_key()以所引的方式返回数组的值组成的新数组
echo '<hr>';
echo print_r(array_keys($user),true);
//array_search()返回指定值的键值。
echo array_search('php',$user);
echo '<hr>';
//键值对调
echo print_r(array_flip($user),true);
//数组的指针操作
echo count($user).'<hr>';//数组中值的个数。
//返回数组中的当前指针所指向的键;
echo key($user)."<hr>";
//返回数组中的当前指针所指向的值;
echo current($user),'<hr>';
//next表示指针下移
next($user);
echo key($user)."<hr>";
echo current($user),'<hr>';
//reset()指针复位,end()指针移向最后一个元素,
reset($user);
echo key($user)."<br>";
echo current($user),'<hr>';
end($user);
echo key($user)."<br>";
echo current($user),'<hr>';
//each()返回当前索引与关联描述的数组,不过each已经淘汰。
echo print_r(each($user),true).'<hr>';
//list()
reset($user);
list($key,$value)=each($user);
echo $key.'=>'.$value.'<hr>';
//while()循环把数组的键值全部取出来
reset($user);
while(list($key,$value)=each($user)){
echo $key.'=>'.$value.'<br>';
}点击 "运行实例" 按钮查看在线实例

4. 编程: 数组模拟栈与队列操作
<?php
/**
*
*/
echo'<pre>';
header("Content-type:text/html;charset=utf-8");
//数组的键值操作
$user=['id'=>01,'name'=>'php','salary'=>'$6666','firm'=>'狗东'];
//入栈,栈的操作遵循先进后出的原则
/*echo array_push($user,'age');
echo '<hr>';
echo count($user);
echo '<hr>';
print_r($user);
echo '<hr>';
//出栈操作,array_pop();一次只能出一个数。
echo array_pop($user);
echo '<hr>';*/
//shift(),unshift()队操作
echo array_unshift($user,'male','60kg').'<br>';
print_r($user);
echo array_shift($user).'<br>';
print_r($user);
//模拟队操作,遵循先进先出原则,不能同时在一端进行出队、入队原则。
echo array_push($user,'male').'<br>';//尾部进队
print_r($user);
echo array_shift($user).'<br>';//头部出队
print_r($user);点击 "运行实例" 按钮查看在线实例

总结:
这节课学到的知识如下:
1、while:入口判断,先判断条件,再运行代码;do~while():出口判断,先运行代码,在判断条件。
2、函数的基础知识:参数,作用域。参数又分为无参、一个参、两个参及以上(传参应注意位置,可选参数必须往前放。),作用域分为函数内部与外部,内部只限该函数调用,函数若想使用外部变量(1、使用$global,2、使用$GLOBALS['变量名']
)
3、数组的键值与指针操作。
4、数组的栈与队列操作。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号