0; $i--) {//排除日期,代码等标题栏 if (!empty($content1[$i])) { $content3 = explode(",", iconv("gbk", "utf-8", $content1[$i])); } else{ continue; } // 解析返回的历史数据 $data['date'] = strtotime($content3[0]);//用于创建表 $data['code'] = intval(explode("'",$content3[1])[1]); $data['open_price'] = floatval($content3[3]); $data['hightest_price'] = floatval($content3[4]); $data['lowest_price'] = floatval($content3[5]); $data['close_price'] = floatval($content3[6]); $data['value'] = floatval($content3[7]); $data['amount'] = floatval($content3[8]); $data['increase_price'] = floatval($content3[9]); $data['increase_value'] = floatval($content3[10]); //将所要存储的数据放入一个数组中 $stock_name = $content3[1]; if ($data['close_price'] == 0) {//当收盘价为0的时候,表示此时的基于9-3点,所以不存储 continue; } if (!empty($data)) { $msg= Index_csi300::insert($data);//将这支股票的历史数据存入数据库 } } } return $msg; } static public function get_history_index_gem($stock_code,$start_date,$end_date) { $code = self::stock_block($stock_code); $url = "http://quotes.money.163.com/service/chddata.html?code=" . $code . "&start=" . $start_date . "&end=" . $end_date . "&fields=TOPEN;HIGH;LOW;TCLOSE;VATURNOVER;VOTURNOVER;CHG;PCHG"; //构建所要发送的url $content1=Finance163::curl_get_data($url); if (!empty($content1[1])) { for ($i = count($content1) - 1; $i >0; $i--) {//排除日期,代码等标题栏 if (!empty($content1[$i])) { $content3 = explode(",", iconv("gbk", "utf-8", $content1[$i])); } else{ continue; } // 解析返回的历史数据 $data['date'] = strtotime($content3[0]);//用于创建表 $data['code'] = intval(explode("'",$content3[1])[1]); $data['open_price'] = floatval($content3[3]); $data['hightest_price'] = floatval($content3[4]); $data['lowest_price'] = floatval($content3[5]); $data['close_price'] = floatval($content3[6]); $data['value'] = floatval($content3[7]); $data['amount'] = floatval($content3[8]); $data['increase_price'] = floatval($content3[9]); $data['increase_value'] = floatval($content3[10]); //将所要存储的数据放入一个数组中 $stock_name = $content3[1]; if ($data['close_price'] == 0) {//当收盘价为0的时候,表示此时的基于9-3点,所以不存储 continue; } if (!empty($data)) { $msg= Index_gem::insert($data);//将这支股票的历史数据存入数据库 } } } return $msg; } static public function get_history_index_kc50($stock_code,$start_date,$end_date) { $code = self::stock_block($stock_code); $url = "http://quotes.money.163.com/service/chddata.html?code=" . $code . "&start=" . $start_date . "&end=" . $end_date . "&fields=TOPEN;HIGH;LOW;TCLOSE;VATURNOVER;VOTURNOVER;CHG;PCHG"; //构建所要发送的url $content1=Finance163::curl_get_data($url); if (!empty($content1[1])) { for ($i = count($content1) - 1; $i >0; $i--) {//排除日期,代码等标题栏 if (!empty($content1[$i])) { $content3 = explode(",", iconv("gbk", "utf-8", $content1[$i])); } else{ continue; } // 解析返回的历史数据 $data['date'] = strtotime($content3[0]);//用于创建表 $data['code'] = intval(explode("'",$content3[1])[1]); $data['open_price'] = floatval($content3[3]); $data['hightest_price'] = floatval($content3[4]); $data['lowest_price'] = floatval($content3[5]); $data['close_price'] = floatval($content3[6]); $data['value'] = floatval($content3[7]); $data['amount'] = floatval($content3[8]); $data['increase_price'] = floatval($content3[9]); $data['increase_value'] = floatval($content3[10]); //将所要存储的数据放入一个数组中 $stock_name = $content3[1]; if ($data['close_price'] == 0) {//当收盘价为0的时候,表示此时的基于9-3点,所以不存储 continue; } if (!empty($data)) { $msg= Index_kc50::insert($data);//将这支股票的历史数据存入数据库 } } } return $msg; } static public function get_history_index_scz($stock_code,$start_date,$end_date) { $code = self::stock_block($stock_code); $url = "http://quotes.money.163.com/service/chddata.html?code=" . $code . "&start=" . $start_date . "&end=" . $end_date . "&fields=TOPEN;HIGH;LOW;TCLOSE;VATURNOVER;VOTURNOVER;CHG;PCHG"; //构建所要发送的url $content1=Finance163::curl_get_data($url); if (!empty($content1[1])) { for ($i = count($content1) - 1; $i >0; $i--) {//排除日期,代码等标题栏 if (!empty($content1[$i])) { $content3 = explode(",", iconv("gbk", "utf-8", $content1[$i])); } else{ continue; } // 解析返回的历史数据 $data['date'] = strtotime($content3[0]);//用于创建表 $data['code'] = intval(explode("'",$content3[1])[1]); $data['open_price'] = floatval($content3[3]); $data['hightest_price'] = floatval($content3[4]); $data['lowest_price'] = floatval($content3[5]); $data['close_price'] = floatval($content3[6]); $data['value'] = floatval($content3[7]); $data['amount'] = floatval($content3[8]); $data['increase_price'] = floatval($content3[9]); $data['increase_value'] = floatval($content3[10]); //将所要存储的数据放入一个数组中 $stock_name = $content3[1]; if ($data['close_price'] == 0) {//当收盘价为0的时候,表示此时的基于9-3点,所以不存储 continue; } if (!empty($data)) { $msg= Index_scz::insert($data);//将这支股票的历史数据存入数据库 } } } return $msg; } static public function get_history_index_sh($stock_code,$start_date,$end_date) { $code = self::stock_block($stock_code); $url = "http://quotes.money.163.com/service/chddata.html?code=" . $code . "&start=" . $start_date . "&end=" . $end_date . "&fields=TOPEN;HIGH;LOW;TCLOSE;VATURNOVER;VOTURNOVER;CHG;PCHG"; //构建所要发送的url $content1=Finance163::curl_get_data($url); if (!empty($content1[1])) { for ($i = count($content1) - 1; $i >0; $i--) {//排除日期,代码等标题栏 if (!empty($content1[$i])) { $content3 = explode(",", iconv("gbk", "utf-8", $content1[$i])); } else{ continue; } // 解析返回的历史数据 $data['date'] = strtotime($content3[0]);//用于创建表 $data['code'] = intval(explode("'",$content3[1])[1]); $data['open_price'] = floatval($content3[3]); $data['hightest_price'] = floatval($content3[4]); $data['lowest_price'] = floatval($content3[5]); $data['close_price'] = floatval($content3[6]); $data['value'] = floatval($content3[7]); $data['amount'] = floatval($content3[8]); $data['increase_price'] = floatval($content3[9]); $data['increase_value'] = floatval($content3[10]); //将所要存储的数据放入一个数组中 $stock_name = $content3[1]; if ($data['close_price'] == 0) {//当收盘价为0的时候,表示此时的基于9-3点,所以不存储 continue; } if (!empty($data)) { $msg= Index_sh::insert($data);//将这支股票的历史数据存入数据库 } } } return $msg; } static public function get_history_index_sh50($stock_code,$start_date,$end_date) { $msg=""; $code = self::stock_block($stock_code); $url = "http://quotes.money.163.com/service/chddata.html?code=" . $code . "&start=" . $start_date . "&end=" . $end_date . "&fields=TOPEN;HIGH;LOW;TCLOSE;VATURNOVER;VOTURNOVER;CHG;PCHG"; //构建所要发送的url $content1=Finance163::curl_get_data($url); if (!empty($content1[1])) { for ($i = count($content1) - 1; $i >0; $i--) {//排除日期,代码等标题栏 if (!empty($content1[$i])) { $content3 = explode(",", iconv("gbk", "utf-8", $content1[$i])); } else{ continue; } // 解析返回的历史数据 $data['date'] = strtotime($content3[0]);//用于创建表 $data['code'] = intval(explode("'",$content3[1])[1]); $data['open_price'] = floatval($content3[3]); $data['hightest_price'] = floatval($content3[4]); $data['lowest_price'] = floatval($content3[5]); $data['close_price'] = floatval($content3[6]); $data['value'] = floatval($content3[7]); $data['amount'] = floatval($content3[8]); $data['increase_price'] = floatval($content3[9]); $data['increase_value'] = floatval($content3[10]); //将所要存储的数据放入一个数组中 $stock_name = $content3[1]; if ($data['close_price'] == 0) {//当收盘价为0的时候,表示此时的基于9-3点,所以不存储 continue; } if (!empty($data)) { $msg= Index_sh50::insert($data);//将这支股票的历史数据存入数据库 } } } return $msg; } /*** * @param $code * @return int * 获取历史股票交易数据 */ static public function get_history_trade_data($stock_code,$start_date,$end_date) { $code = self::stock_block($stock_code); $url = "http://quotes.money.163.com/service/chddata.html?code=" . $code . "&start=" . $start_date . "&end=" . $end_date . "&fields=TOPEN;HIGH;LOW;TCLOSE;VATURNOVER;VOTURNOVER;LCLOSE;CHG;PCHG;TURNOVER"; //构建所要发送的url $curlHandle = curl_init(); curl_setopt($curlHandle, CURLOPT_URL, $url); curl_setopt($curlHandle, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curlHandle, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($curlHandle, CURLOPT_SSL_VERIFYHOST, false); curl_setopt($curlHandle, CURLOPT_TIMEOUT, 10); $content = curl_exec($curlHandle); curl_close($curlHandle); $content1 = explode("\n", $content);//以换行符进行分割字符串 if (!empty($content1[1])) { for ($i = count($content1) - 1; $i >0; $i--) {//排除日期,代码等标题栏 if (!empty($content1[$i])) { $content3 = explode(",", iconv("gbk", "utf-8", $content1[$i])); } else{ continue; } // 解析返回的历史数据 $t = explode("-",$content3[0]); $date = trim($t[0].$t[1]); $time = trim($t[0].$t[1].$t[2]); $data['date'] = $date;//用于创建表 $data['time'] = $time;//用于获取时间戳 $data['code'] = intval(explode("'",$content3[1])[1]); $data['open_price'] = floatval($content3[3]); $data['hightest_price'] = floatval($content3[4]); $data['lowest_price'] = floatval($content3[5]); $data['close_price'] = floatval($content3[6]); $data['value'] = floatval($content3[7]); $data['amount'] = floatval($content3[8]); $data['close_price_qfq'] = floatval($content3[9]); $data['increase_price'] = floatval($content3[10]); $data['increase_value'] = floatval($content3[11]); $data['turnover'] = floatval($content3[12]);//换手率 //将所要存储的数据放入一个数组中 $stock_name = $content3[1]; if ($data['close_price'] == 0) {//当收盘价为0的时候,表示此时的基于9-3点,所以不存储 continue; } if (!empty($data)) { // Index::add($stock_name, $content3[0]);//将这支股票的股票名称和股票代码存入 $msg= Day_k_base::insert($data,$date);//将这支股票的历史数据存入数据库 } } } return $msg; } } ?>