博客列表 >流程控制实战与常用的数组函数(一)--2018年8月23号

流程控制实战与常用的数组函数(一)--2018年8月23号

fighting的博客
fighting的博客原创
2018年08月29日 11:23:43733浏览

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

                                          时间: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、数组的栈与队列操作。

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议