php数组模拟队列,演示while ; 函数的参数与作用域; 数组; 数组模拟栈与队列操作(0823)...

1. 编程: 实例演示while(),do~while()

实例

/**

* while(): 入口判断型

* do ~ while(): 出口判断型

*/

// while()

$i=1; //初始化条件

while($i<10) {

for ($j=1; $j<10; $j++) {

echo $i*$j.',';

}

$i++;  //更新条伯

echo '
'; //换行

}

echo '


';

//do ~ while()

$i=1; //初始化条件

do {

for ($j=1; $j<10; $j++) {

echo $i*$j.',';

}

$i++;  //更新条伯

echo '
'; //换行

} while($i<10);

运行实例 »

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

运行效果图:

6d35bdaf44525971bbf5d6e059ddd968.png

2. 编程: 函数的参数与作用域

实例

/**

* 函数的基本知识

* 1.声明的语法

* 2.参数设置

* 3.返回值

* 4.作用域

*/

//声明

function hello()

{

return    '来到php中文网学习真好!';

}

//调用: 按名调用,名称后跟上一对圆括号

echo hello(),'


';

function hello1($siteName)

{

return    '来到'.$siteName.'学习真是好!!';

}

echo hello1('php中文网'),'


';

//当有可选参数的时候,必须把必选参数往前放

function hello2($lang,$who1,$siteName='php中文网')

{

return    $who1.'来到'.$siteName.'学习'.$lang;

}

echo hello2('php','我'),'


';

//参数实际就是一个占位符,仅供参考,可以没有

function hello3()

{

//    return print_r(func_get_args(),true);

//    return func_get_arg(2);

//   return func_num_args(); //获取参数的数量

return (func_get_arg(0) + func_get_arg(1) + func_get_arg(2));

}

echo hello3(7,8,9),'


';

$siteName = 'php中文网 GOOD!';

// php中只有函数作用域,函数外部声明的变量在函数内部不能直接使用

function hello4 ()

{

//    global $siteName;

return $GLOBALS['siteName'];

}

echo hello4();

运行实例 »

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

运行效果图:

3fd65f11d429ddbab3c6e30acfb59108.png

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

实例

/**

* 1.常用的键值操作

* 2.数组内部指针操作(巡航)

*/

$user = ['id'=>50, 'name'=>'Raymond','gender'=>'male','age'=>28];

echo '

',print_r($user,true);

//in_array()判断数组中是否存在某个值

echo in_array('peter',$user) ? 'peter存在
' : 'peter不存在
';

echo in_array('Raymond',$user) ? 'Raymond存在
' : 'Raymond不存在
';

//array_key_exists():判断某个键名是否存在于数组中?

echo array_key_exists('salary',$user) ? 'salary字段存在
' : 'salary字段不存在
';

// array_values():以索引方式返回数组的值组成的数组

print_r(array_values($user));

// array_keys()

//print_r(array_keys($user));

// array_search():以字符串的方式返回指定值的键

echo $user[array_search('Raymond',$user)];

//键值对调

//print_r(array_flip($user));

//数组的内部操作

echo count($user),'
';

//key()返回当前元素的键

echo key($user),'
';

//current()返回当前元素的值

echo current($user),'


';

//next()指针下移

next($user);

echo key($user),'
';

echo current($user),'


';

next($user);

echo key($user),'
';

echo current($user),'


';

//复位

reset($user);

echo key($user),'
';

echo current($user),'


';

//尾部

end($user);

echo key($user),'
';

echo current($user),'
';

reset($user);

// each()返回当前元素的键值的索引与关联的描述,并自动下移

print_r(each($user));

//print_r(each($user));

//list() //将索引数组中的值,赋值给一组变量

list($key, $value) = each($user);

echo $key, '******', $value,'


';

// while,list(),each() 遍历数组

reset($user);

while (list($key, $value) = each($user)) {

echo $key , ' => ', $value, '
';

}

运行实例 »

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

运行效果图:

b7390b108e4aab44636f62b566259749.png

4. 编程: 数组模拟栈与队列操作

实例

/**

* 使用数组来模拟堆栈和队列操作

*/

$user = ['id'=>5, 'name'=>'peter','gender'=>'male'];

echo '

',print_r($user,true);

echo '当前长度: '. count($user), '
';

// 入栈:array_push()返回新数组的长度= count()

echo array_push($user,'50','Raymond','male');

echo '当前长度: '. count($user), '
';

print_r($user);

echo array_pop($user),'
'; // 头部出栈

echo array_pop($user),'
'; // 头部出栈

echo array_pop($user),'
'; // 头部出栈

print_r($user);

//队: shift(),unshift()

// echo array_unshift($user, 'www.php.cn','peterzhu');

// print_r($user);

// echo array_shift($user),'
';

// print_r($user);// 头部出队

echo '


';

//模拟队列操作: 增删只能在二端进行,不允许同一端进行

array_push($user, 'Raymond'); //尾部进队

print_r($user);

array_shift($user); // 头部出队

print_r($user);

array_unshift($user, 'Python'); // 头部进队

print_r($user);

array_pop($user);  // 尾部出队

print_r($user);

运行实例 »

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

运行效果图:

aab23a52677dc71d01fe65fb83d02ffc.png

总结:php的函数和数组的遍历是基础和实战中经常用到的技术,必须熟练掌握。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值