我想知道是否有像這樣的框架。
mysql_insert_into("tablename",$arrayofvariables)
我想知道是否有像這樣的框架。
mysql_insert_into("tablename",$arrayofvariables)
使用此整齊地數據插入到MySQL表:
<?php
function mysql_insert($table, $inserts) {
$values = array_map('mysql_real_escape_string', array_values($inserts));
$keys = array_keys($inserts);
return mysql_query('INSERT INTO `'.$table.'` (`'.implode('`,`', $keys).'`) VALUES (\''.implode('\',\'', $values).'\')');
}
?>
For example:
<?php
mysql_insert('cars', array(
'make' => 'Aston Martin',
'model' => 'DB9',
'year' => '2009',
));
?>
也有一個叫dbFacile庫,這是否準確,但需要建立一個數據庫對象。
如評論中所述,參見例如, Zend_Db的。 This is the relevant documentation。雖然Zend_Db並不是很輕便。
示例代碼和描述是不完全完成,但是如果平均$arrayofvariables
包含要插入的值作爲行,或者通過位置或名稱索引,則PDOStatement::execute
可以採取的數組:
$query = $db->prepare('INSERT INTO `table` (foo, baz, bam) VALUES (?, ?, ?) ');
$query->execute(array('bar', 42, 'bug-AWWK'));
$query = $db->prepare('INSERT INTO `table` (foo, baz, bam) VALUES (:foo, :baz, :bam) ');
$query->execute(array(':foo' => 'bar', ':baz' => 42, ':bam' => 'bug-AWWK'));
,與我所查找的類似,但準備語句的時間比普通的mysql_query要長。不管怎樣,謝謝你。也許沒有像我說的方法。 –
@UğurGümüşhan:當我測試它們時,一個'PDO :: prepare'和'PDO :: execute'或'mysqli :: prepare'和'mysqli :: execute'花費了大約與mysql_query'相同的時間。多次執行相同的預處理語句,這是準備好的語句被設計爲更高性能的地方,比重複執行mysql_query花費的時間少了*時間。當你有不同數據的陳述或多次執行查詢時,準備好的陳述是適當的。至於你提到的,沒有足夠的知道你在找什麼。 – outis
你可以看看Zend_Db http://framework.zend.com/manual/en/zend.db.html –
我認爲所有的框架都可以做到這一點。無論如何,Zend Framework肯定會允許它。 –
哪裏?手冊不顯示這樣的東西。它有適配器,而不是使用那個適配器,我會自己編寫查詢。框架不一定節省時間。 –