Đoạn mã đơn giản để tạo bảng mysql và chèn giá trị từ bất kỳ biến JSON nào. Đây là một cách hack nhanh .. kiểm tra các loại trường, v.v. :) Có lẽ có nhiều cách tốt hơn, nhưng cách này hiệu quả và đã giúp tôi tiết kiệm hàng giờ trong việc đặt tên trường thủ công
Điều này có thể được sửa đổi để tạo ra một bảng quan hệ xử lý các đối tượng. Bây giờ, nó được tạo ra cho các thứ JSON được tạo thành mảng chứ không phải các đối tượng tức là các mảng trong mảng.
<?php
JSON_to_table($place_your_JSON_var_here_please);
function JSON_to_table($j_obj, $tblName = "New_JSON_table_" . time()){
$j_obj = json_decode($your_JSON_variable, true);
if(!mysql_num_rows( mysql_query("SHOW TABLES LIKE '" . $tblName . "'"))){
$cq = "CREATE TABLE ". $tblName ." (
id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,";
foreach($j_obj as $j_arr_key => $value){
$cq .= $j_arr_key . " VARCHAR(256),";
}
$cq = substr_replace($cq,"",-1);
$cq .= ")";
mysql_query($cq) or die(mysql_error());
}
$qi = "INSERT INTO $tblName (";
reset($j_obj);
foreach($j_obj as $j_arr_key => $value){
$qi .= $j_arr_key . ",";
}
$qi = substr_replace($qi,"",-1);
$qi .= ") VALUES (";
reset($j_obj);
foreach($j_obj as $j_arr_key => $value){
$qi .= "'" . mysql_real_escape_string($value) . "',";
}
$qi = substr_replace($qi,"",-1);
$qi .= ")";
$result = mysql_query($qi) or die(mysql_error());
return true;
}
?>