Correction status:qualified
Teacher's comments:要是能加上自己的总结内容就更完美了!
流程控制实战与常用的数组函数(一)
时间: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、数组的栈与队列操作。