PHP的堆栈操作

使用数组来模拟 堆栈的队列操作
堆栈是先进后出 后进先出
队列是先进先出

$userName = ['name'=>'李逍遥','sex'=>'man','age'=>'23'];
echo '<pre>',print_r($userName,true);

//入栈

echo '入栈前数组长度',count($userName),'<br>';
// array_push() 返回新数组的长度 = count()
array_push($userName,'入栈的字符串');
echo '入栈后 数组长度',count($userName),'<br>';
print_r($userName);

//出栈
//array_pop() 出栈的顺序是从后往前 后进先出

echo array_pop($userName),'<br>';
echo array_pop($userName),'<br>';
echo array_pop($userName),'<br>';

echo '出栈后的数组内容:','<br>',print_r($userName);
echo '<hr>';

//队列操作

// array_unshift() 入队
echo array_unshift($userName,'新入队的字符串'),'<br>';
echo '入队后的数组内容:','<br>',print_r($userName);
echo '<br>';
// array_shift()  出队
echo array_shift($userName);
echo '<br>';
echo '出队后的数组内容:','<br>',print_r($userName);
echo '<hr>';
$userName1 = ['name'=>'李逍遥','sex'=>'man','age'=>'23'];
echo '<pre>',print_r($userName1,true);

// 模拟队列操作 增删只能在两端进行 不能在同一端进行
//尾部进队

array_push($userName1,'PHP');
print_r($userName1);
echo '<br>';

//头部出队

array_shift($userName1);
print_r($userName1);

//头部进队

array_unshift($userName1,'Python');
print_r($userName1);

//尾部出队

array_pop($userName1);
print_r($userName1);
文章最后编辑时间:2019-03-01 22:53
已有 18 条评论
  1. Zenlee
    222
    回复 Zenlee 2019-02-25 23:06 Admin
发表评论