| 1234567891011121314151617181920212223242526272829303132333435363738 | 
							- <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); 
 
- class Model_transact extends Lin_Model 
 
- {
 
- 	function __construct(){
 
- 		parent::__construct();
 
- 		$this->load->database();
 
- 		$this->table = 'transact';
 
- 		$this->load_table('transact');
 
- 	}
 
- 	public function insert_batch($keys,$arr){
 
- 		$values=array_values($arr);
 
- 		$sql=$this->multArray2Insert("crowd_".$this->table,$keys,$values);
 
- 		$res=$this->db->query($sql);
 
- 		return $res;
 
- 	}
 
- 	 /**
 
-  * 多条数据同时转化成插入SQL语句
 
-  * @ CreatBy:
 
-  * @param string $table 表名
 
-  * @$arr_key是表字段名的key:$arr_key=array("field1","field2","field3")
 
-  * @param array $arr是字段值 数组示例 arrat(("a","b","c"), ("bbc","bbb","caaa"),('add',"bppp","cggg"))
 
-  * @return string
 
-  */
 
- private function multArray2Insert($table, $arr_key, $arr, $split = '`')
 
- {
 
-     $arrValues = array();
 
-     if (empty($table) || !is_array($arr_key) || !is_array($arr)) {
 
-         return false;
 
-     }
 
-     $sql = "INSERT INTO %s( %s ) values %s ON DUPLICATE KEY UPDATE `updated_at`=".time();
 
-     foreach ($arr as $k => $v) {
 
-         $arrValues[$k] = "'" . implode("','", array_values($v)) . "'";
 
-     }
 
-     $sql = sprintf($sql, $table, "{$split}" . implode("{$split} ,{$split}", $arr_key) . "{$split}", "(" . implode(") , (", array_values($arrValues)) . ")");
 
-     return $sql;
 
- }
 
- 	
 
- }  //end class
 
 
  |