Blogger Information
Blog 39
fans 2
comment 2
visits 50634
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
流程控制实战与常用的数组函数(一)--2018年8月23号
fighting的博客
Original
726 people have browsed it

                                                        流程控制实战与常用的数组函数(一)

                                          时间: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);

运行实例 »

点击 "运行实例" 按钮查看在线实例

1.png

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();

运行实例 »

点击 "运行实例" 按钮查看在线实例

1.png3. 编程: 数组常用的键值操作与指针操作


实例

<?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>';
}

运行实例 »

点击 "运行实例" 按钮查看在线实例

1.png

实例

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.png

总结: 

这节课学到的知识如下:

1、while:入口判断,先判断条件,再运行代码;do~while():出口判断,先运行代码,在判断条件。

2、函数的基础知识:参数,作用域。参数又分为无参、一个参、两个参及以上(传参应注意位置,可选参数必须往前放。),作用域分为函数内部与外部,内部只限该函数调用,函数若想使用外部变量(1、使用$global,2、使用$GLOBALS['变量名']

3、数组的键值与指针操作。

4、数组的栈与队列操作。

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