Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Timbunan PHP

Timbunan PHP

PHPz
PHPzasal
2024-08-29 13:01:05494semak imbas

Timbunan php ditakrifkan sebagai kelas yang akan digunakan untuk menyimpan elemen dalam ingatan tindanan. Tindanan ialah set koleksi berurutan berdasarkan sifat tertentu. Ia boleh disimpan dan diambil semula oleh data dengan menggunakan harta LIFO(masuk terakhir, keluar dahulu) supaya elemen input dipanggil objek yang diletakkan pada memori tindanan. Jadi tempat pertama objek dikeluarkan dari timbunan dengan bantuan beberapa kaedah lalai. Ini akan dicapai apabila kita akan memasukkan elemen dalam tindanan menggunakan elemen push() dan dialih keluar dengan bantuan kaedah pop().

IKLAN Kursus Popular dalam kategori ini PEMBANGUN PHP - Pengkhususan | 8 Siri Kursus | 3 Ujian Olok-olok

Mulakan Kursus Pembangunan Perisian Percuma Anda

Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain

Sintaks

Dalam timbunan Php ialah kelas apabila kita mahu melaksanakan ingatan tindanan dalam php; dengan bantuan kelas ini, kami akan membinanya. Dengan menggunakan pembina, kita boleh mencipta contoh daripadanya. Timbunan php menggunakan beberapa kaedah lalai untuk menyimpan dan mendapatkan semula data daripada memori tindanan. Selain itu, ia boleh digunakan untuk beberapa operasi struktur data lain dalam php.

<?php
class classname {
Access modifier $var;
$var = new Stack();
$var -> push(argument);
$var -> pop(argument);
$var -> default methods for accessing the elements for stack memory;
----some php logics based on the requirement---
}

Kod di atas ialah sintaks asas untuk menggunakan kelas tindanan dengan kaedah yang telah ditetapkan untuk menyimpan dan mendapatkan semula data daripada memori.

Bagaimana tindanan berfungsi dalam PHP?

Kelas tindanan digunakan terutamanya untuk menyimpan dan mendapatkan semula data daripada ingatan. Disebabkan ini, prinsip dan sifat seperti LIFO(masuk terakhir, keluar dahulu) boleh diikuti, jadi elemen yang disisipkan pada kedudukan terakhir iaitu elemen pertama akan muncul keluar dengan menggunakan kaedah pop(). Jadi, apabila kita ingin melaksanakan struktur data dengan konsep tindanan, kaedah lalai ini digunakan untuk mengendalikan tugasan ini, dan ia akan dikaitkan dengan pangkalan data. Secara amnya, timbunan ialah timbunan objek yang biasanya boleh disusun dengan beberapa jenis lapisan jadi timbunan adalah koleksi berurutan dengan menggunakan set harta tertentu untuk setiap set nilai yang disimpan atau ditolak ke dalam timbunan yang mencipta rujukan dan yang sama akan dialih keluar apabila elemen tindanan dialih keluar daripada memori tindanan.

Setiap set nilai mempunyai rujukannya, jadi jika kita mahu menolak atau meletuskan elemen dari timbunan, ia boleh dilaksanakan dengan kapasiti maksimum. Oleh itu, jika ingatan tindanan adalah limpahan, ia dikatakan limpahan, iaitu) ralat limpahan tindanan dilemparkan; ini adalah untuk memasukkan elemen jika kita gunakan untuk meletuskan timbunan kosong yang dilemparkan dengan ralat aliran bawah timbunan yang dinamakan.

Contoh timbunan PHP

Di bawah ialah contoh timbunan PHP yang berbeza:

Contoh #1

Kod:

<?php
$var=array("siva","raman", "welcome to my domain", "Have a Nice Day" );
array_push($var,"Hi","Come back to my domain");
print_r($var);
?>

Output:

Timbunan PHP

Dalam contoh di atas, kami menggunakan kaedah array_push() asas, yang diwarisi daripada kelas tindanan. Kaedah tolak ini untuk memasukkan elemen dalam memori tindanan. Kami menggunakan kaedah arary_push() untuk menyimpan elemen dalam bekas tatasusunan. Ia boleh dimulakan dengan indeks 0 dan berakhir dengan indeks yang ditentukan iaitu; setiap aksara rentetan hendaklah dimasukkan pada kedudukan memori yang ditentukan. Ia adalah lokasi memori storan berurutan; jika kita ingin mengalih keluar elemen tertentu dalam tatasusunan dengan bantuan kaedah pop(), ia akan muncul pada memori tindanan.

Contoh #2

Kod:

<?php
class Demo
{
protected $vars;
protected $vars1;
public function __construct($vars1 = 47) {
$this->vars = array();
$this->vars1  = $vars1;
}
public function push($eg) {
if(count($this->vars) < $this->vars1) {
array_unshift($this->vars, $eg);
} else {
throw new RuntimeException("Welcome To My Domain");
}
}
public function pop() {
if (empty($this->vars)) {
throw new RuntimeException("Please try user again");
} else
return array_shift($this->vars);
}
}
}
$vars = new Demo();
$vars->push(7);
$vars->push(9);
$vars->push(11);
echo $vars->pop();
$vars->push(7);
$vars->push(9);
$vars->push(8);
echo $vars->pop();
echo $vars->pop();
?>

Output:

Timbunan PHP

Dalam contoh kedua, kami menggunakan kelas tindanan dengan cara yang berbeza; kita boleh memanggil kaedah lalai seperti kaedah push(), pop() untuk memasukkan dan mengeluarkan elemen dari memori. Selain itu, kita boleh menggunakan kaedah lain seperti kaedah array_shift() untuk mengalih keluar elemen pertama daripada tatasusunan dan mengembalikan nilai elemen yang dialih keluar. Semua tatasusunan berangka akan menggunakan kekunci akan diubah suai dan untuk mula mengira nilai sifar semasa menggunakan kekunci literal. Jika elemen dialih keluar, elemen jadi sebaik sahaja kita keluar daripada timbunan, pembolehubah rujukan juga akan dialih keluar daripada memori.

Contoh #3

Kod:

<?php
class Example
{
protected $vars;
protected $vars1;
function __construct($vars1 = 19) {
$this->vars = array();
$this->vars1  = $vars1;
}
function push($eg1) {
if(count($this->vars) < $this->vars1) {
array_unshift($this->vars, $eg1);
} else {
throw new RuntimeException("Welcome To Third example");
}
}
function pop() {
if (empty($this->vars)) {
throw new RuntimeException("Please try user again");
} else {
return array_shift($this->vars);
}
}
function top() {
return current($this->vars);
}
function isEmpty() {
return empty($this->vars);
echo $vars;
}
}
$vars = new Example();
$vars->push(1);
$vars->push(11);
$vars->push(111);
echo $vars->pop();
$vars->push(72);
$vars->push(92);
$vars->push(83);
echo $vars->pop();
echo $vars->pop();
echo "\n \n";
echo "The Stack memory is full \n";
?>

Output:

Timbunan PHP

Dalam contoh ketiga di atas, kami menggunakan kaedah yang sama seperti contoh sebelumnya 2, tetapi di sini kami menggunakan dua kaedah tambahan lain seperti top() dan isEmpty() untuk menyemak nilai senarai tatasusunan daripada memori. Kedua-dua kaedah lalai ini akan digunakan untuk mengesahkan saiz tatasusunan dan memori tindanan dengan menggunakan algoritma sifat LIFO; elemen terakhir dikeluarkan daripada ingatan. Dengan menggunakan kaedah array_shit(), kita boleh melintasi dan memunculkan elemen dari kedudukan terakhir elemen pertama.

Kesimpulan

Timbunan dalam php digunakan untuk memahami jejak tindanan, ingatan untuk merangkum data dalam calon pengguna. Dengan menggunakan kaedah lalai seperti push(), pop(), dan juga kaedah lain untuk menyimpan elemen dalam timbunan. Setelah diisi, ia membuang ralat limpahan tindanan yang dilemparkan jika unsur-unsur hendak dimasukkan ke dalam memori tindanan jika andaikan kita perlu mengalih keluar elemen dengan menggunakan pop(), ia membuang ralat aliran bawah tindanan berlaku pada skrin.

Atas ialah kandungan terperinci Timbunan PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn