php yii 插入,YII框架批量插入数据的方法

本文实例讲述了YII框架批量插入数据的方法。分享给大家供大家参考,具体如下:

public function insertSeveral($table, $array_columns)

{

$sql = '';

$params = array();

$i = 0;

foreach ($array_columns as $columns) {

$names = array();

$placeholders = array();

foreach ($columns as $name => $value) {

if (!$i) {

$names[] = $this->_connection->quoteColumnName($name);

}

if ($value instanceof CDbExpression) {

$placeholders[] = $value->expression;

foreach ($value->params as $n => $v)

$params[$n] = $v;

} else {

$placeholders[] = ':' . $name . $i;

$params[':' . $name . $i] = $value;

}

}

if (!$i) {

$sql = 'INSERT INTO ' . $this->_connection->quoteTableName($table)

. ' (' . implode(', ', $names) . ') VALUES ('

. implode(', ', $placeholders) . ')';

} else {

$sql .= ',(' . implode(', ', $placeholders) . ')';

}

$i++;

}

return $this->setText($sql)->execute($params);

}

$rows = array(

array('id' => 1, 'name' => 'John'),

array('id' => 2, 'name' => 'Mark')

);

$command = Yii::app()->db->createCommand();

$command->insertSeveral('users', $rows);

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值