Menentukan String pada PHP dengan Heredoc-Syntax
Saya tadi googling dengan keyword ‘string’, dan muncul hasil yang ‘mengejutkan’ terutama pada pencarian gambar. (Jangan coba di rumah, kalau di kantor boleh hehe).
Mulai ke pembahasan sebenarnya, PHP memiliki beberapa syntax untuk menentukan string dalam kode kita. Dua syntax yang pasti sudah sering kita gunakan adalah, single-quote (‘) dan double-quote (“). Kali ini saya coba kenalkan (ingatkan ding), satu metode yaitu heredoc-syntax.
Cara ini efektif digunakan pada penulisan teks yang panjang untuk membuat kode-kode PHP lebih rapi. Penulisannya mengikuti aturan berikut:
- Harus diawali dengan operator <<< kemudian diikuti identifier. (Mulai PHP 5.3.0, identifier boleh diapit oleh double-quote.
- Closing tag-nya harus berada persis di kolom pertama pada baris tersendiri, tidak boleh ada tab, spasi, ada lainnya sebelum closing tag di baris yang sama.
- Heredoc syntax memiliki sifat seperti double-quote, sehingga opeator tanda dolar ($) akan diterjemahkan sebagai sebuah variable, kecuali jika kita meng-escapenya.
- Bila kita ingin menggunakan single-quote maupun double-quote di dalam heredoc syntax, tidak perlu di-escape.
Contoh penggunaan:
$text = <<<EOT Having heavy conversations About the furthest constellations of our souls. And we're just trying to find some meaning In the things that we believe in But we got some ways to go. Of all of the things that she's ever said She goes and says something that just knocks me dead. EOT; echo $text;
Contoh 2:
$she = 'Grace'; $text = <<<EOT Having heavy conversations About the furthest constellations of our souls. And we're just trying to find some meaning In the things that we believe in But we got some ways to go. Of all of the things that $she's ever said $she goes and says "something" that just knocks me dead. EOT; echo $text;
Contoh 3:
$text = <<<EOT These ugly black sheeps cost \$300,00. EOT; echo $text;
Pada contoh satu, bisa Anda lihat, setelah operator <<< kemudian diikuti identifier EOT (End of Text). Kita boleh menggunakan identifier apapun, dengan aturan seperti label-label PHP pada umumnya, seperti: hanya boleh mengandung karakter alphanumeric dan underscore, serta tidak boleh diawali dengan angka atau underscore. Contoh identifier: <<<HEHE dengan closing tag HEHE;
Nowdoc-Syntax
Mulai PHP 5.3.0 kita juga bisa menggunakan Nowdoc syntax. Jika Heredoc bersifat seperti double quote, maka Nowdoc bersifat seperti single-quote. Identifier-nya diapit oleh single-quote, misal: <<<’EOT’
Image Source: napkinfactory.net


