Kesalahan Smarty/PHP
Smarty dapat menangkap banyak kesalahan seperti kekurangan atribut tag
atau nama variabel salah. Jika ini terjadi, anda akan melihat kesalahan
mirip dengan yang berikut:
Teladan 17-1. Kesalahan Smarty Warning: Smarty: [in index.tpl line 4]: syntax error: unknown tag - '%blah'
in /path/to/smarty/Smarty.class.php on line 1041
Fatal error: Smarty: [in index.tpl line 28]: syntax error: missing section name
in /path/to/smarty/Smarty.class.php on line 1041 |
|
Smarty memperlihatkan kepada anda nama template, nomor baris dan kesalahan.
Setelah itu, kesalahan terdiri dari nomor baris aktual dalam Smarty
class di mana kesalahan terjadi.
Ada kesalahan-kesalahan tertentu di mana Smarty tidak bisa menangkapnya,
seperti kekurangan tag penutup. Tipe kesalahan ini biasanya berakhir dalam
kesalahan penguraian waktu-kompilasi PHP.
Teladan 17-2. Kesalahan penguraian PHP Parse error: parse error in /path/to/smarty/templates_c/index.tpl.php on line 75 |
|
Ketika anda menemukan kesalahan penguraian PHP, nomor baris kesalahan akan
merujuk ke naskah PHP terkompilasi, BUKAN template itu sendiri. Biasanya
anda bisa melihat template dan menandai kesalahan syntaks. Ini adalah beberapa
hal umum untuk dicari: kekurangan tag penutup untuk
{if}{/if} or
{section}{/section}
, atau syntaks dari logika di dalam tag {if}. Jika anda
tidak bisa menemukan kesalahan, anda mungkin harus membuka file PHP terkompilasi
dan pergi ke nomor baris untuk mencari di mana lokasi kesalahan pada template.
Teladan 17-3. Kesalahan umum lainnya Warning: Smarty error: unable to read resource: "index.tpl" in...
or
Warning: Smarty error: unable to read resource: "site.conf" in... |
$template_dir tidak benar, tidak ada atau
file index.tpl tidak dalam direktori
templates/.
Fungsi
{config_load}
ada di dalam template (atau
config_load()
sudah dipanggil) dan baik
$config_dir
tidak benar, tidak ada ataupun
site.conf tidak dalam direktori.
Fatal error: Smarty error: the $compile_dir 'templates_c' does not exist,
or is not a directory... |
Fatal error: Smarty error: unable to write to $compile_dir '.... |
Fatal error: Smarty error: the $cache_dir 'cache' does not exist,
or is not a directory. in /.. |
Fatal error: Smarty error: unable to write to $cache_dir '/... |
|
Lihat juga
debugging,
$error_reporting
dan
trigger_error().