Apakah ada yang punya T_PAAMAYIM_NEKUDOTAYIM
?
php
syntax-error
runtime-error
Peter Turner
sumber
sumber
u
. Seharusnya begituT_PAAMAYIM_NEKUDOTAYIM
. (PAAMAYIM
= "dua kali",NEKUDOTAYIM
=:
= "נקודותיים")Jawaban:
Ini operator usus besar ganda
::
(lihat daftar token parser ).sumber
var_dump(empty(TRUE))
foreach($cats as cat
-satunya karakter yang dapat diterima setelahcat
pernyataan sintaksis yang valid adalah a::
, karena itu akan memungkinkan Anda untuk menentukan properti statis dari beberapa kelas yang disebutcat
. Misalnya, jikacat
kelas memiliki anggota statis publik yang dipanggil$mouse
, makaforeach($cats as cat::$mouse)
itu benar-benar validphp
, tetapi pernyataan dengan apa pun selain::
setelah itucat
akan menjadi kesalahan sintaksis. Jika$mouse
bukan properti yang dideklarasikan daricat
Anda, Anda akan mendapatkan kesalahan fatal, tetapi masih bukan kesalahan sintaksis.Google melakukan keajaiban.
Ini bahasa Ibrani untuk "usus ganda".
sumber
Itu nama untuk
::
operator di PHP. Secara harfiah berarti "usus ganda". Untuk beberapa alasan mereka menamainya dalam bahasa Ibrani. Periksa sintaksis kode Anda, dan letakkan yang::
sesuai :-)sumber
Dari Wikipedia :
Dari dokumentasi PHP resmi :
sumber
Ini juga datang ketika Anda menerapkan konstanta di PHP ke fungsi kosong ():
Itu kasus saya. Saya menyelesaikannya dengan menggunakan ini:
sumber
Saya tahu bahasa Ibrani dengan cukup baik, sehingga untuk memperjelas nama "Paamayim Nekudotayim" untuk Anda, makna yang diparafrasekan adalah "usus ganda", tetapi diterjemahkan secara harfiah:
::
menunjukkan "dua kali, dua titik", atau lebih umumnya dikenal sebagai Operator Penyelesaian Ruang Lingkup .sumber
Ini dapat terjadi pada foreachs saat menggunakan:
dari pada
sumber
Bagi saya ini terjadi dalam fungsi kelas.
Dalam PHP 5.3 dan di atasnya
$this::$defaults
berfungsi dengan baik; ketika saya menukar kode ke server yang karena alasan apa pun memiliki nomor versi yang lebih rendah melemparkan kesalahan ini.Solusinya, dalam kasus saya, adalah menggunakan kata kunci
self
alih-alih$this
:self::$defaults
berfungsi dengan baik.sumber
$this
, atau apa yang terjadi pada Anda ?