Rumah > Artikel > pembangunan bahagian belakang > Apakah Tujuan PHP\'s ?: Operator?
Memahami PHP 5.3 ?: Operator
Diperkenalkan dalam PHP 5.3, operator ?: menawarkan sintaks ringkas untuk ungkapan bersyarat. Ia pada asasnya memudahkan pengendali bersyarat yang tersedia sebelum ini:
<code class="php">expr ? val_if_true : val_if_false</code>
Kini, dengan pengendali ?:, anda boleh meninggalkan ungkapan tengah:
<code class="php">expr ?: val_if_false</code>
Ini bersamaan dengan:
<code class="php">expr ? expr : val_if_false</code>
Sebagai contoh, kod berikut menunjukkan penggunaan ?: operator:
<code class="php"><?php require __DIR__.'/c.php'; if (!is_callable($c = @$_GET['c'] ?: function() { echo 'Woah!'; })) throw new Exception('Error'); $c(); ?></code>
Menyahkod Fungsi Tanpa Nama
PHP turut memperkenalkan konsep fungsi tanpa nama dengan PHP 5.3. Fungsi ini, kadangkala dirujuk sebagai fungsi lambda, boleh ditakrifkan secara on-the-fly dan dihantar sebagai argumen kepada fungsi lain.
Fungsi tanpa nama wujud sebagai objek kelas Penutupan dan boleh diberikan kepada pembolehubah atau diluluskan secara langsung sebagai hujah. Fungsi ini menyediakan cara yang mudah untuk menulis blok kod sebaris pendek tanpa memerlukan definisi fungsi yang berasingan.
Sebagai contoh, dalam contoh yang disediakan:
<code class="php">function() { echo 'Woah!'; }</code>
merupakan fungsi tanpa nama yang mengeluarkan " Wah!" apabila dipanggil.
Atas ialah kandungan terperinci Apakah Tujuan PHP\'s ?: Operator?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!