昨日の面接の質問の中に、スタックの応用に関する質問がありましたが、その時は原理は知っていましたが、今日はそれについて書きます。 。
<?php /* * Created on 2015-4-9 * * PHP栈的应用 */ class Stack{ private $stack_arr =array(); private $end = null; public function push($str){ if($this->end === null){ $this->end = 0; }else{ $this->end++; } $this->stack_arr[$this->end] = $str; } public function pop(){ // if($this->end=null){return false;} //如果这样写,变量end为0的时候,是否就出错了 if(empty($this->stack_arr)){return false;} $pop_data = $this->stack_arr[$this->end]; array_splice($this->stack_arr,$this->end); $this->end--; return $pop_data; } public function getData(){ return $this->stack_arr; } } $arr = array(); $data_obj =new Stack(); $data_obj->push("1_one"); $data_obj->push("2_two"); $data_obj->push("3_three"); $data_obj->pop(); $arr = $data_obj->getData(); print_r($arr); ?>
印刷結果:
------------------------------------------ -------------------------------------------------- ----------
配列 ( [0] => 1_one [1] => 2_two )
上記では、PHP スタックの書き方をさまざまな側面を含めて紹介していますが、PHP チュートリアルに興味のある友人に役立つことを願っています。