array('number', $attr['timestamp']), 'day_k_date' => array('number', $attr['date']), 'day_k_code' => array('string', $attr['code']), 'day_k_name' => array('string', $attr['name']), 'day_k_open_price' => array('number', $attr['open_price']), 'day_k_close_price' => array('number', $attr['close_price']), 'day_k_highest_price' => array('number', $attr['highest_price']), 'day_k_lowest_price' => array('number', $attr['lowest_price']), 'day_k_amount' => array('number', $attr['amount']), 'day_k_value' => array('number', $attr['value']), 'day_k_increase_price' => array('number', $attr['increase_price']),// 涨跌价 'day_k_increase_ratio' => array('number', $attr['increase_ratio']),// 涨跌幅 'day_k_turnover' => array('number', $attr['turnover']),// 换手率 'day_k_pe_ttm' => array('number', $attr['pe_ttm']), 'day_k_tradable_value' => array('number', $attr['tradable_value']), 'day_k_total_value' => array('number', $attr['total_value']), 'day_k_pb' => array('number', $attr['pb']), 'day_k_pe_dynamic' => array('number', $attr['pe_dynamic']), 'day_k_pe_static' => array('number', $attr['pe_static']), ); return $this->pdo->sqlinsert($this->table_fullname, $param); } /**** * @param $attr * @return mixed *插入当天的数据 */ public function insert($attr){ $param = array ( 'day_k_date' => array('number', strtotime($attr['date'])), 'day_k_code' => array('number', $attr['code']), 'day_k_name' => array('string', $attr['name']), 'day_k_open_price' => array('number', $attr['open_price']), 'day_k_highest_price' => array('number', $attr['highest_price']), 'day_k_lowest_price' => array('number', $attr['lowest_price']), 'day_k_value' => array('number', $attr['value']), 'day_k_amount' => array('number', $attr['amount']), 'day_k_close_price' => array('number', $attr['close_price']), 'day_k_close_price_qfq' => array('number', $attr['close_price_qfq']), 'day_k_increase_price' => array('number', $attr['increase_price']), 'day_k_increase_value' => array('number', $attr['increase_value']), 'day_k_turnover' => array('number', $attr['turnover']), ); $msg=$this->pdo->sqlinsert($this->table_fullname, $param); return $msg; } /*** * @param $attr * @return mixed * day_k的历史数据 */ public function HistoryDayK($attr){ $param = array ( 'day_k_timestamp ' => array('number', $attr['timestamp']), 'day_k_date' => array('number', $attr['date']), 'day_k_code' => array('string', $attr['code']), 'day_k_name' => array('string', $attr['name']), 'day_k_open_price' => array('number', $attr['open_price']), 'day_k_highest_price' => array('number', $attr['highest_price']), 'day_k_lowest_price' => array('number', $attr['lowest_price']), 'day_k_close_price' => array('number', $attr['close_price']), 'day_k_value' => array('number', $attr['value']), 'day_k_amount' => array('number', $attr['amount']), 'day_k_increase_price' => array('number', $attr['increase_price']), 'day_k_increase_ratio' => array('number', $attr['increase_ratio']), ); $msg=$this->pdo->sqlinsert($this->table_fullname, $param); return $msg; } /*** * @param $code * @param $start_date * @param $end_date * @return array * */ public function get_day_k_info($code,$start_date,$end_date,$order_info) { //查询语句必须用sql_check_input检查参数 $stock_code = $this->pdo->sql_check_input(array('string', $code));//类型是字符串,那一定要在条件中将数据使用引号引用起来,否则不使用索引 $start_date=$code = $this->pdo->sql_check_input(array('number', $start_date)); $end_date = $this->pdo->sql_check_input(array('number', $end_date)); $sql = "select * from ". $this->table_fullname ." where 1=1 "; $where =" and day_k_code=".$stock_code ." and day_k_timestamp between ".$start_date." and ".$end_date ; $sql.=$where; if($order_info==1) { $order=" order by day_k_timestamp desc"; } else { $order=" order by day_k_timestamp asc"; } $sql.=$order; $rs = $this->pdo->sqlQuery($sql); $r = array(); if($rs){ foreach($rs as $key => $val){ $r[$key] = $this->dataToAttr($val); } return $r; }else{ return $r; } } } ?>