|
|
@@ -360,36 +360,67 @@ class Table_day_k extends Table {
|
|
|
* 获取股票的某天和当天的数据
|
|
|
* 当获取某天的数据不存在,返回空,当天的数据不存在,返回最近一个交易日的信息
|
|
|
*/
|
|
|
- public function get_current_day_k($code,$date)
|
|
|
+ public function get_current_day_k($code,$date=0,$fq_price=0)
|
|
|
{
|
|
|
- //查询语句必须用sql_check_input检查参数
|
|
|
- $stock_code = $this->pdo->sql_check_input(array('string', $code));//类型是字符串,那一定要在条件中将数据使用引号引用起来,否则不使用索引
|
|
|
- $sql = "select * from ". $this->table_fullname ." where 1=1 ";
|
|
|
- $where =" and day_k_code=".$stock_code ;
|
|
|
- if($date==0){//获取的是当天的数据
|
|
|
+ if($fq_price==0)//不复权
|
|
|
+ {
|
|
|
+ //查询语句必须用sql_check_input检查参数
|
|
|
+ $stock_code = $this->pdo->sql_check_input(array('string', $code));//类型是字符串,那一定要在条件中将数据使用引号引用起来,否则不使用索引
|
|
|
+ $sql = "select * from ". $this->table_fullname ." where 1=1 ";
|
|
|
+ $where =" and day_k_code=".$stock_code ;
|
|
|
+ if($date==0){//获取的是当天的数据
|
|
|
+ $date=date("Ymd",time());
|
|
|
+ $where.=" and day_k_date <= ".$date;
|
|
|
+ }else{//获取某一天的数据
|
|
|
+ $date = $this->pdo->sql_check_input(array('number', $date));
|
|
|
+ $where.=" and day_k_date =".$date;
|
|
|
+ }
|
|
|
+ $sql.=$where;
|
|
|
+ $order=" order by day_k_date desc limit 1 ";
|
|
|
+ $sql.=$order;
|
|
|
+ $rs = $this->pdo->sqlQuery($sql);
|
|
|
+ $r = array();
|
|
|
+ if($rs){
|
|
|
+ foreach($rs as $key => $val){
|
|
|
|
|
|
-// $date = (int)(strtotime(date("Y-m-d",time())));
|
|
|
- $date=date("Ymd",time());
|
|
|
- $where.=" and day_k_date <= ".$date;
|
|
|
+ $r[$key] = $this->dataToAttr($val);
|
|
|
+ }
|
|
|
+ return $r[0];
|
|
|
+ }else{
|
|
|
+ return $r;
|
|
|
+ }
|
|
|
|
|
|
- }else{//获取某一天的数据
|
|
|
- $date = $this->pdo->sql_check_input(array('number', $date));
|
|
|
- $where.=" and day_k_date =".$date;
|
|
|
- }
|
|
|
- $sql.=$where;
|
|
|
- $order=" order by day_k_date desc limit 1 ";
|
|
|
- $sql.=$order;
|
|
|
- $rs = $this->pdo->sqlQuery($sql);
|
|
|
- $r = array();
|
|
|
- if($rs){
|
|
|
- foreach($rs as $key => $val){
|
|
|
-
|
|
|
- $r[$key] = $this->dataToAttr($val);
|
|
|
+ }else if($fq_price==1)// 复权
|
|
|
+ {
|
|
|
+//查询语句必须用sql_check_input检查参数
|
|
|
+ $stock_code = $this->pdo->sql_check_input(array('string', $code));//类型是字符串,那一定要在条件中将数据使用引号引用起来,否则不使用索引
|
|
|
+ $sql = "select * from ". $this->table_fullname ." where 1=1 ";
|
|
|
+ $where =" and day_k_code=".$stock_code ;
|
|
|
+ if($date==0){//获取的是当天的数据
|
|
|
+ $date=date("Ymd",time());
|
|
|
+ $where.=" and day_k_date <= ".$date;
|
|
|
+ }else{//获取某一天的数据
|
|
|
+ $date = $this->pdo->sql_check_input(array('number', $date));
|
|
|
+ $where.=" and day_k_date =".$date;
|
|
|
}
|
|
|
- return $r[0];
|
|
|
- }else{
|
|
|
- return $r;
|
|
|
- }
|
|
|
+ $sql.=$where;
|
|
|
+ $order=" order by day_k_date desc limit 1 ";
|
|
|
+ $sql.=$order;
|
|
|
+ $sql=" select * from(".$sql.")a left join boniu_day_k_qfq b on a.day_k_code=b.day_k_qfq_code and b.day_k_qfq_date=a.day_k_date ";
|
|
|
+ $rs = $this->pdo->sqlQuery($sql);
|
|
|
+ $r = array();
|
|
|
+ if($rs){
|
|
|
+ foreach($rs as $key => $val){
|
|
|
+
|
|
|
+
|
|
|
+ $r[$key] = $this->dataToAttr2($val);
|
|
|
+ }
|
|
|
+ return $r[0];
|
|
|
+ }else{
|
|
|
+ return $r;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
|
|
|
|