Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Mengapa kode PHP dieksekusi sebelum HTML?

echo melakukan output SEGERA. Jika Anda mencoba menggemakan fungsi yang melakukan gema sendiri, gema fungsi akan dijalankan PERTAMA. misalnya

function foo() {
   echo 'foo';
}

echo 'bar' . foo();   // output foobar

dan dijalankan sebagai setara dengan

echo 'foo';
echo 'bar';

Mengapa? Karena echo pertama harus membangun string yang menjadi output. Jadi sebelum bar dapat digaungkan, gema induk harus memanggil foo() . Fungsi itu tidak mengembalikan apa pun, ia hanya melakukan gemanya sendiri. beberapa echo panggilan tidak berkoordinasi satu sama lain, jadi gema foo melakukan outputnya. lalu foo tidak mengembalikan apa pun ke echo induk, jadi Anda melakukan echo 'bar' . null , dan keluaran bar .

Jika Anda memiliki ini:

function bar() {
   return 'bar';
}

echo 'foo' . bar();

itu akan bekerja seperti yang diharapkan. Urutan eksekusinya adalah:

$temp = bar(); // $temp gets string'bar'
echo 'foo' . $temp;
echo 'foo' . 'bar';
echo 'foobar';
-> output foobar


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. CDbCommand::fetchColumn() gagal:SQLSTATE[HY000]:Kesalahan umum:2014 Tidak dapat menjalankan kueri saat kueri tanpa buffer lainnya aktif

  2. Masukkan Subquery di Select Query

  3. acara mysql tidak berfungsi

  4. Bagaimana saya bisa mengabstraksikan pernyataan yang disiapkan mysqli di PHP?

  5. Memblokir '0000-00-00' dari Kolom Tanggal MySQL