Rumah >pembangunan bahagian belakang >masalah PHP >Perbezaan antara objek dan tatasusunan dalam php
Dalam PHP, objek dan tatasusunan ialah dua jenis data biasa. Walaupun kedua-duanya boleh digunakan untuk menyimpan data, ia sangat berbeza. Artikel ini akan memperkenalkan secara ringkas perbezaan antara objek dan tatasusunan dalam PHP.
1. Definisi
Dalam PHP, tatasusunan ialah koleksi data yang tersusun, yang terdiri daripada satu siri nama kunci dan nilai yang sepadan. Tatasusunan boleh dibuat menggunakan fungsi tatasusunan atau, dalam PHP 5.4 dan ke atas, pengendali [].
$buah = array("epal", "pisang", "oren");
$haiwan = ["anjing", "kucing", "ikan"];
Objek ialah contoh yang terdiri daripada kaedah dan sifat dan boleh dibuat melalui kelas.
kelas Buah {
public $name;
public function __construct($name){
<code>$this->name = $name;</code>
}
}
$apple = Buah baru("epal");
2. Kaedah penyimpanan
Nilai utama tatasusunan boleh menjadi integer atau rentetan, dan ia boleh berterusan atau tidak berterusan. Walau bagaimanapun, objek hanya boleh menggunakan rentetan sebagai nama kunci dan nama atribut mestilah unik.
$buah = ["1" => "epal", "2" => "pisang", "3" => "oren"];
gema $buah["1 "]; //Output epal
$apple = new Fruit("apple");
echo $apple->name; //Output apple
3. Ciri
(1) Anda boleh menambah, mengubah suai dan memadamkan elemen sesuka hati.
$buah = ["epal", "pisang", "oren"];
$buah[] = "pir";
$buah[0] = "anggur";
unset($fruits[1]);
(2) Tatasusunan boleh mempunyai struktur berbilang dimensi.
$buah = [["epal", "merah"], ["pisang", "kuning"]];
gema $buah[0][0]. " ialah " ; //Epal keluaran berwarna merah
(3) Nilai dalam tatasusunan boleh terdiri daripada sebarang jenis data.
$fruits = ["epal", 2, benar, ["banana"]];
echo gettype($fruits[0]); //Rentetan keluaran
echo gettype($fruits [1]); //Output integer
echo gettype($fruits[2]); //Output boolean
echo gettype($fruits[3]); //Output array
(1) Objek mempunyai kaedah dan sifat tersendiri.
kelas Buah {
public $name;
public $color;
public function __construct($name, $color){
<code>$this->name = $name; $this->color = $color;</code>
}
info fungsi awam(){
<code>echo "This ". $this->name. " is ". $this->color;</code>
}
}
$epal = buah baru("epal", "merah");
$epal->maklumat (); //Output Epal ini berwarna merah
(2) Objek boleh diwarisi.
kelas Haiwan {
public $name;
public function __construct($name){
<code>$this->name = $name;</code>
}
}
class Cat dilanjutkan Haiwan {
bunyi fungsi awam(){
<code>echo $this->name. " says meow";</code>
}
}
$cat = new Cat("Kitty");
$cat-> sound(); //Output Kitty berkata meow
(3) Objek boleh melaksanakan antara muka.
antara muka Kereta {
setModel fungsi awam($model);
}
kelas Audi melaksanakan Kereta {
$model peribadi;
setModel fungsi awam($ model){
<code>$this->model = $model;</code>
}
fungsi awam getModel(){
<code>echo "The car model is ". $this->model;</code>
}
}
$audi = Audi baharu();
$audi->setModel("A4");
$audi->getModel(); //Output Model kereta ialah A4
4 >(1) Tatasusunan sesuai untuk penyimpanan koleksi yang dipesan, seperti senarai, kalendar, borang, dsb.
(2) Objek sesuai untuk proses yang perlu menyelesaikan masalah, seperti menyelesaikan masalah melalui enkapsulasi, atau menyelesaikan masalah melalui teknik seperti pewarisan dan polimorfisme.
(3) Apabila mengakses data pangkalan data, objek atau tatasusunan biasanya dikembalikan. Gunakan objek untuk mengakses data dengan memanggil kaedah objek, dan gunakan tatasusunan untuk mengakses data mengikut indeks atau nama kunci.
5. Ringkasan
Artikel ini memperkenalkan secara ringkas definisi, kaedah penyimpanan, ciri dan senario penggunaan objek dan tatasusunan dalam PHP. Saya percaya bahawa pembaca telah memahami perbezaan antara mereka dan boleh memilih jenis data yang sesuai mengikut keperluan mereka dalam pembangunan sebenar. Tidak kira jenis data yang anda pilih, anda mesti memberi perhatian kepada penggunaannya yang munasabah untuk meningkatkan kebolehbacaan dan kebolehselenggaraan program.
Atas ialah kandungan terperinci Perbezaan antara objek dan tatasusunan dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!