Blog Posts » PHP » Menjalankan Kode PHP Didalam Postingan

Menjalankan Kode PHP Didalam Postingan

PHP dibekali fungsi yang hebat, yaitu eval()*. Fungsi ini bekerja dengan cara mem-parse string yang diberikan kemudian mengeksekusinya sebagai PHP.
[Normal][RAW][Download]


Bagaimana cara menanamkan fungsi ini agar kita bisa menjalankan kode PHP di posting atau artikel?
Cukup buat fungsi layaknya BBcode, seperti kalau menggunakan preg_replace. Namun karena didalam preg_replace kita tidak bisa memasukkan fungsi lain (walau sebenarnya bisa dengan cara menambahkan e modifier pada preg_replace) tetapi PHP telah meninggalkannya sejak PHP 5.5.0 (Hehe kebanyakan hosting masih pake PHP 5.2.x :P):

e (PREG_REPLACE_EVAL)
Warning
This feature has been DEPRECATED as of PHP 5.5.0. Relying on this feature is highly discouraged.


Maka kita gunakan penggantinya saja agar tidak ketinggalan :D, yaitu preg_replace_callback.

Kita buat fungsi callback** dulu yang berisi eval:
[Normal][RAW][Download]


Lalu contoh sederhana fungsi BBcode-nya:
[Normal][RAW][Download]


Contoh penerapannya:
[Normal][RAW][Download]


Mudah bukan? Selamat mencoba :)

* Perlu diingat bahwa jika ingin menggunakan fungsi eval ini maka harus benar-benar hati-hati terhadap akses publik. Ada beberapa hosting yang men-disable atau mem-blok fungsi ini karena alasan keamanan.
** Tentang cara kerja fungsi callback ada di Penerapan PHP callback.

(admin)