2012-10-06 27 views
1

我想創建一個函數,它的表的名稱和列名和值的數組使用它在MySQL如何將數組轉換成變量是在PHP

檢查我的代碼來生成一個INSERT。

不幸的是,這種技術不起作用,因爲它總是在每個值後面生成一個逗號,這會在輸入數據時產生錯誤。任何人都知道更好的方式來創建這個功能?

<?php 
$arrayDados = array('nome' => 'Renato', 'idade' => 24, 'peso' => 36, 'mae' => 'neide'); 
$colunas = ""; 
$valores = ""; 
$tabela = 'cadastro'; 

    foreach ($arrayDados as $key => $value) { 
     $colunas .= $key . ', '; 
     $valores .= $value.', '; 
    } 
$sql = "INSERT INTO $tabela ($colunas) VALUES ($valores)"; 

echo $sql;` 
+1

使用'破滅(」 'array_keys($ arrayDados))'爲列和'破滅(「',」「,array_values($ arrayDados))價值觀 – air4x

回答

1
$sql = "INSERT INTO $tabela (".implode(",",array_keys($arrayDados)).") VALUES (".implode(",",array_values($arrayDados)).")"; 

文檔:array_keys - array_values - implode