Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Perbedaan antara -> dan ::di PHP MySQLi OOP

-> digunakan ketika merujuk ke anggota suatu objek.

:: adalah Operator Resolusi Lingkup dan digunakan untuk merujuk ke anggota statis Kelas.

Perhatikan kelas berikut:

class FooBar {
    public static function fizz() {
        echo "Fizz";
    }

    public function buzz() {
        echo "Buzz";
    }
}

Anda akan memanggil fungsi buzz() menggunakan -> :

$myFooBar = new FooBar();
$myFooBar->buzz();

Tetapi akan menggunakan :: untuk memanggil fungsi fizz() , karena merupakan anggota statis (anggota yang tidak memerlukan instance kelas untuk dipanggil):

FooBar::fizz();

Juga, saat kita berbicara tentang perbedaan antara statis anggota versus dibuat anggota, Anda tidak dapat menggunakan $this untuk merujuk ke instance saat ini dalam statis anggota. Anda menggunakan self sebagai gantinya (tidak ada $ . di depan ) yang merujuk ke kelas saat ini, atau parent jika Anda ingin merujuk ke kelas induk, atau jika Anda senang bekerja dengan PHP 5.3.0, static (yang memungkinkan pengikatan statis yang terlambat).

Dokumentasi menggunakan :: untuk merujuk ke fungsi di dalam kelas karena nama kelas di header bukan turunan dari kelas. Masih menggunakan contoh yang sama, entri dokumentasi yang mengacu pada fungsi buzz() akan menggunakan tajuk berikut:

FooBar::buzz

Tetapi kecuali dokumentasi menentukan itu adalah anggota statis, Anda harus menggunakan -> pada contoh untuk menyebutnya:

$myFooBar = new FooBar();
$myFooBar->buzz();


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mengamankan Server MySQL

  2. MySQL CREATE FUNCTION Syntax

  3. Buat tabel gagal dengan Batasan Kunci Asing salah Dibentuk

  4. Menjalankan Jumlah untuk Beberapa Kategori di MySQL

  5. Cara memperluas bidang yang dipisahkan koma menjadi beberapa baris di MySQL