博主信息
博文 17
粉丝 0
评论 0
访问量 12479
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
while()do-while()循环、函数、数组键值操作以及栈与队列-20180823
NiceLiving的博客
原创
1627人浏览过

1、while() do~while()循环

实例

<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2018-08-26
 * Time: 18:58
 */
echo '<h2>while(),do-while() 语法</h2>';

for($i=0;$i<10;$i++){
    echo $i<9?$i.',':$i.'<br>';
}
//入口判断型 while() 可能一次也不执行
$i=0; //初始化条件
while ($i<10) {
    echo $i < 9 ? $i . ',' : $i;
    $i++;  //更新条件
}
//出口判断型do-while()  至少执行一次
echo '<hr>';
$i=0;
do{
    echo $i<9?$i.',':$i;
    $i++;
} while ($i<10);

运行实例 »

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

2、函数的参数与作用域

实例

<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2018-08-26
 * Time: 20:26
 */

echo '<h2>函数的基本知识</h2>';

//函数声明
function hello()
{
    return '欢迎来到PHP中文网学习';
}

//调用: 按名调用,名称后跟一对圆括号
echo hello();
echo '<hr>';
//带参数的函数
function hello2($siteName)
{
    return '欢迎来到'.$siteName.'学习';
}
//传参
echo hello2('PHP中文网');

echo '<hr>';
//带默认值
function hello3($siteName='php中文网')
{
    return '欢迎来到'.$siteName.'学习';
}
//传参值将替换默认值
echo hello3('JAVA');
echo '<hr>';
//当有可选参数的时候,必须把必选参数往前放
function hello4($lang,$siteName='php中文网')
{
    return '欢迎来到'.$siteName.'学习'.$lang;
}
//传参值和方法中的参数一一对应,默认第一个传给第一个
echo hello4('JAVA').'<hr>';

//参数实际就是一个占位符,仅供参考,可以没有
//function hello5($a,$b,$c)
function hello5()
{
   // return print_r(func_get_args(),true);//获取所有参数的值
//    return func_get_arg(1);//获取某个参数值
//    return func_num_args();//获取参数的数量
//    return($a+$b+$c);
    //获取传参值相加一样可以获取和
    return( func_get_arg(0)+func_get_arg(1)+func_get_arg(2));

}
echo hello5(7,8,9);

运行实例 »

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

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

实例

<?php
echo '<h2>数组函数(键值操作与内部指针)</h2>';
$user=['id'=>5,'name'=>'ben','sex'=>'baby','age'=>1];
// print_r($user);
echo '<pre>'.print_r($user,true);
 //in_array() 判断数组中是否存在某个值,精确匹配(区分大小写)
//返回booler值(ture或者false)
echo in_array('bn',$user)?'存在'.'<br>':'不存在'.'<br>';

//array_key_exists() : 判断某个键名是否村子于数组中
echo  array_key_exists('name',$user)?'存在'.'<br>':'不存在'.'<br>';

//array_values() :以索引方式返回数组的值组成新的数组
print_r(array_values($user));

//array_key() : 以索引方式返回数组的键组成新的数组
print_r(array_keys($user));

//array_search() : 以字符串的方式返回指定值的键
$key= array_search('ben',$user); //获取键名赋值给$key
echo $user[$key].'<br>';  //输出键$key对应的值

//array_flip()  键值对调
print_r(array_flip($user));

echo '<h2>数组的内部操作</h2>';
//查询数组的个数
echo count($user).'<br>';
//key() 返回当前元素的键
echo key($user).'<br>';
//current() 返回当前元素的值
echo current($user).'<br>';
//next() 指针后移
next($user);
echo key($user).'<br>';
echo current($user).'<br>';
echo '<hr>';
//reset() 复位数组
reset($user);
echo key($user).'<br>';
echo current($user).'<br>';

//end() 指针指向尾部
end($user);
echo key($user).'<br>';
echo current($user).'<br>';

reset($user); //复位
echo '<hr>';
//each()返回当前元素的键值的索引与关联的描述,执行完并自动下移
print_r(each($user)) ;

//list() 将索引数组中的值,赋值给一组变量
list($key,$value)=each($user);
echo $key.'******'.$value;
reset($user); //复位
echo '<hr>';
//while(),list(),each()  遍历数组
$ccc=['id'=>6,'name'=>'ze','age'=>1,'sex'=>'baby'];
while (list($key,$value)=each($ccc)){
    echo $key.'=>'.$value.'<br>';
}

运行实例 »

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

4、数组模拟栈与队列操作

实例

<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2018-08-27
 * Time: 13:52
 */
echo '<h2>数组的栈和队操作</h2>';

$ccc=['id'=>6,'name'=>'ze','age'=>1,'sex'=>'baby'];
echo '<pre>',print_r($ccc,true);
echo '当前长度:'.count($ccc);
echo '<hr>';
//入栈 array_push() 返回新数组的长度 等于: count()
echo array_push($ccc,'php中文网');
echo '<pre>',print_r($ccc,true);
//出栈 array_pop()
echo array_pop($ccc).'<br>';
echo array_pop($ccc).'<br>';
echo array_pop($ccc).'<br>';

print_r($ccc);
//队操作  array_shift() array_unshift()

//添加 array_unshift()返回新数组的长度 等于: count()
echo array_unshift($ccc,'JAVA','hahahaha').'<br>';
print_r($ccc);
//删除 shift()
echo array_shift($ccc).'<br>';
print_r($ccc);
echo '<hr>';
//模拟队列操作: 增删只能在两端进行,不允许同一端进行
$b=['di'=>8,'name'=>'x','sex'=>'men'];
print_r($b);
array_unshift($b,'ww');//头部入队
print_r($b);
array_pop($b);//尾部出队
print_r($b);
array_push($b,'aaaaa');//尾部入队
print_r($b);
array_shift($b);//头部出队
print_r($b);

运行实例 »

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


批改状态:合格

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学