Heim  >  Artikel  >  Backend-Entwicklung  >  Wie schreibe ich einen PHP-Stack?

Wie schreibe ich einen PHP-Stack?

WBOY
WBOYOriginal
2016-08-08 09:26:231085Durchsuche

Unter den Interviewfragen gab es gestern eine Frage zur Anwendung des Stacks. Ich kannte das Prinzip damals, hatte aber noch nicht den spezifischen Code geschrieben, über den ich heute schreiben werde. .

<?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);


?>

Ergebnisse drucken:
-------------------------- -------------------------------------------------- ----------------------------------
Array ( [0] => 1_one [1] = > 2_two )

Das Obige stellt vor, wie man den PHP-Stack schreibt, einschließlich verschiedener Aspekte. Ich hoffe, dass es für Freunde hilfreich ist, die sich für PHP-Tutorials interessieren.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn