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

Gunakan PHP untuk membuang nilai mysql ke file JSON

Tebakan acak:json_encode mengharapkan data yang disandikan UTF-8 dan akan menunjukkan perilaku yang Anda jelaskan pada input non-UTF-8, non-ASCII. Data yang Anda peroleh dari database kemungkinan besar dikodekan dalam bahasa Latin-1.

Setel koneksi database Anda ke utf8 untuk menerima data yang disandikan UTF-8 langsung dari database (lihat UTF-8 sepenuhnya ), atau gunakan (dan saya benci mengatakan ini, karena fungsi ini sering disalahgunakan bahkan tidak lucu, tetapi diterapkan dengan benar di sini) utf8_encode pada semua data yang Anda dapatkan dari database untuk mengonversinya dari Latin-1 ke UTF-8.

Jadi:

// set the connection charset
mysql_set_charset('utf8');

$result = mysql_query("SELECT post_status, post_title FROM wp_posts");

$data = array();
while ($row = mysql_fetch_assoc($result)) { 
    $data['posts'][] = $row;
} 

$json_string = json_encode($data);

...

atau:

$result = mysql_query("SELECT post_status, post_title FROM wp_posts");

$data = array();
while ($row = mysql_fetch_assoc($result)) { 
    $row = array_map('utf8_encode', $row);
    $data['posts'][] = $row;
} 

$json_string = json_encode($data);

...


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana mencegah komit implisit mysql

  2. Negara dan negara bagian dropdown dinamis Laravel

  3. Bagaimana saya bisa mendapatkan daftar database MySQL di PHP menggunakan PDO?

  4. Menemukan/mencari nilai yang hilang di MySQL

  5. Bagaimana cara menerapkan sistem penandaan yang mirip dengan SO di php/mysql?