Parse error: syntax error, unexpected T_ECHO in
Jenis error program ini merupakan error yang paling sering ditemui. Penyebabnya karena kurang menambahkan titik-koma ( ; ) pada akhir suatu perintah (statement). Solusi dalam mencari letak kesalahan programnya membutuhkan kejelian dan ketelitian. Namun demikian, umumnya akan ditunjukkan baris dimana error tersebut muncul. Mulailah dari baris tersebut, namun tidak selamanya penyebab kesalahan berada pada baris yang ditunjukkan. Terkadang penyebab kesalahan justru berada di baris atas atau sebelumnya.
Berikut ini beberapa contoh program beserta tampilan error yang akan muncul jika program dijalankan:
Contoh Program 1.1
Jika program di atas dijalankan maka akan ditampilkan error sebagai berikut:
Parse error: syntax error, unexpected T_ECHO in /home/achmatim/public_html/artikel_demo/error-php/error1.1.php on line 4
”
Baris yang ditunjukkan pada tampilan error di atas adalah baris ke-4, namun jika diperhatikan program 1.1 di atas ternyata penyebab error justru bukan di baris ke-4. Penyebab error berada pada baris 3, dimana statement tidak diakhiri dengan titik-koma ( ; ). Mengapa PHP justru menunjuk ke baris 4? Hal ini disebabkan karena proses pemeriksaan sintaks oleh PHP dilakukan secara berurutan (sekuensial) dari baris pertama hingga terakhir. Pada baris ketiga belum terjadi error, namun statement masih memerlukan adanya titik-koma ( ; ). Saat PHP berada di baris 4, bukan titik-koma ( ; ) yang ditemukan, namun justru perintah “echo”, sehingga disinilah PHP akan menunjukkan errornya. PHP tidak akan mengetahui penyebab errornya dimana, namun PHP akan menunjukkan pada baris mana error mulai terjadi. Tips: periksa program pada baris yang ditunjukkan oleh pesan error, jika tidak ditemukan, periksa baris atasnya. Demikian dan seterusnya hingga penyebab error ditemukan.
Contoh Program 1.2
Jika program di atas dijalankan maka akan ditampilkan error sebagai berikut:
Parse error: syntax error, unexpected T_IF in /home/achmatim/public_html/artikel_demo/error-php/error1.2.php on line 4
”
Sama seperti program 1.1, penyebab errornya adalah kurang titik-koma. Pada program 1.1, letak kesalahan diikuti dengan perintah echo sehingga pesan kesalahan mengatakan “unexpected T_ECHO”. Sedangkan pada program 1.2, letak kesalahan diikuti dengan perintah if, sehingga pesan kesalahan yang ditampilkan adalah “unexpected T_IF”. Dari pesan kesalahan tersebut, kita dapat mengetahui letak kesalahan pasti berada sebelum perintah if, tepatnya pada baris ke-3, statement tidak diakhiri dengan titik-koma ( ; ).
Contoh Program 1.3
$day = date (“D”)
switch ($day) {
case ‘Sun’ : $hari = “Minggu”; break;
case ‘Mon’ : $hari = “Senin”; break;
case ‘Tue’ : $hari = “Selasa”; break;
case ‘Wed’ : $hari = “Rabu”; break;
case ‘Thu’ : $hari = “Kamis”; break;
case ‘Fri’ : $hari = “Jum’at”; break;
case ‘Sat’ : $hari = “Sabtu”; break;
default : $hari = “Kiamat”;
}
echo “Hari ini hari $hari“;
?>
Jika program di atas dijalankan maka akan ditampilkan error sebagai berikut:
Parse error: syntax error, unexpected T_SWITCH in /home/achmatim/public_html/artikel_demo/error-php/error1.3.php on line 3
”
Seperti dua contoh sebelumnya, jelas bahwa pada program 1.3 letak kesalahan berada sebelum perintah switch, tepatnya pada baris ke-2, statement tidak diakhiri dengan titik-koma ( ; ). Jadi, jika muncul pesan kesalahan yang mirip seperti di atas, langsung saja cari perintah switch dan perhatikan baris perintah sebelumnya.
Contoh Program 1.4
/* contoh 1 */
$i = 1
while ($i <= 10) { echo $i++; } ?>
Jika program di atas dijalankan maka akan ditampilkan error sebagai berikut:
Parse error: syntax error, unexpected T_WHILE in /home/achmatim/public_html/artikel_demo/error-php/error1.4.php on line 4
”
Pada contoh program 1.4 di atas, letak kesalahan berada tepat di atas perintah while, tepatnya di baris ke-3. Statement seharusnya diakhiri dengan titik-koma.
Contoh Program 1.5
function cetak_ganjil ($awal, $akhir) {
for ($i=$awal; $i<$akhir; $i++) {
if ($i%2 == 1) {
echo “$i “;
}
}
}
//pemanggilan fungsi
$a = 10;
$b = 50;
echo “Bilangan ganjil dari $a sampai $b :
”
cetak_ganjil($a, $b);
?>
Jika program di atas dijalankan maka akan ditampilkan error sebagai berikut:
Parse error: syntax error, unexpected T_STRING, expecting ‘,’ or ‘;’ in /home/achmatim/public_html/artikel_demo/error-php/error1.5.php on line 13
”
Pada contoh program 1.5 di atas, sudah jelas bahwa letak kesalahannya pada baris ke-12 dimana statement tidak diakhiri titik-koma. Error dengan pesan “unexpected T_STRING” perlu dicermati dengan lebih teliti karena error tidak hanya terjadi karena kurangnya titik-koma, namun dapat juga karena kurang koma ( , ) atau operator penggabungan string berupa titik ( . ). Namun demikian, umumnya terjadi karena penulisan string yang tidak lengkap.
Contoh Program 1.6
echo “test”
function cetak_ganjil ($awal, $akhir) {
for ($i=$awal; $i<$akhir; $i++) {
if ($i%2 == 1) {
echo “$i “;
}
}
}
//pemanggilan fungsi
$a = 10;
$b = 50;
echo “Bilangan ganjil dari $a sampai $b :
“;
cetak_ganjil($a, $b);
?>
Jika program di atas dijalankan maka akan ditampilkan error sebagai berikut:
Parse error: syntax error, unexpected T_FUNCTION, expecting ‘,’ or ‘;’ in /home/achmatim/public_html/artikel_demo/error-php/error1.6.php on line 3
”
Contoh program 1.6 di atas mirip dengan contoh program sebelumnya, hanya saja letak kesalahannya sekarang berada pada baris ke-2, sebelum pendefinisian fungsi. Pada baris tersebut, seharusnya diakhiri dengan titik-koma ( ; ).
Contoh Program 1.7
$nim = “0411500400”;
$nama = ‘Chotimatul Musyarofah’ ;
$umur = 23;
$nilai = 82.25;
$status = TRUE;
echo “NIM : ” . $nim . ”
“;
echo “Nama : $nama
“;
print “Umur : ” . $umur; print ”
“;
printf (“Nilai : %.3f
“, $nilai);
if ($status)
echo “Status : Aktif”
else
echo “Status : Tidak Aktif”;
?>
Jika program di atas dijalankan maka akan ditampilkan pesan kesalahan sebagai berikut:
Parse error: syntax error, unexpected T_ELSE, expecting ‘,’ or ‘;’ in /home/achmatim/public_html/artikel_demo/error-php/error4.1.php on line 14
”
Letak kesalahan pada contoh program 1.7 bukanlah pada baris ke-14 seperti ditunjukkan di atas, namun terletak di baris ke-13 (sebelum perintah ELSE) dimana statement tidak diakhiri dengan titik-koma.
– See more at: http://achmatim.net/2012/10/28/10-penyebab-error-program-php-yang-paling-sering-ditemui/#sthash.GSTrp5sb.dpuf