Saya mendapatkan kesalahan PHP ini:
Kesalahan Parse: kesalahan sintaks, T_VARIABLE tak terduga
Dari baris ini:
$list[$i][$docinfo['attrs']['@groupby']] = $docinfo['attrs']['@count'];
Apakah ada yang salah dengan baris ini?
php
syntax-error
ya Tuhan
sumber
sumber
Jawaban:
Mungkin ada titik koma atau tanda kurung yang hilang sebelum garis yang Anda tempelkan.
Tampaknya baik-baik saja bagi saya; setiap string diizinkan sebagai indeks array.
sumber
$list
adalah variabel.Bisa juga jalur lain. PHP tidak selalu tepat.
Mungkin Anda hanya kehilangan titik koma pada baris sebelumnya.
Cara mereproduksi kesalahan ini, taruh ini dalam file bernama
a.php
:<?php $a = 5 $b = 7; // Error happens here. print $b; ?>
Menjalankannya:
eric@dev ~ $ php a.php PHP Parse error: syntax error, unexpected T_VARIABLE in /home/el/code/a.php on line 3
Penjelasan:
Pengurai PHP mengonversi program Anda menjadi serangkaian token. SEBUAH
T_VARIABLE
adalah Token berjenis VARIABLE. Ketika parser memproses token, ia mencoba memahaminya, dan melontarkan kesalahan jika menerima variabel di mana tidak ada yang diizinkan.Dalam kasus sederhana di atas dengan variabel
$b
, parser mencoba memproses ini:$a = 5 $b = 7;
Pengurai PHP melihat $ b setelah 5 dan mengatakan "itu tidak terduga".
sumber
Dalam kasus saya, ini adalah masalah versi PHP.
File .phar yang saya gunakan tidak kompatibel dengan PHP 5.3.9. Mengalihkan interpreter ke PHP 7 berhasil memperbaikinya.
sumber