PHP天气API接口

中国天气网的API还每次还要先去判断ID,再获取天气信息,觉得有点麻烦,所以自己做了一个PHP一部搞定的。还有一个农历API。

01. <?php
02. header('Access-Control-Allow-Origin: *');
03. header("Content-Type:text/javascript;charset=utf-8");
04. /**
05. * 获取用户真实 IP
06. */
07. functiongetIP()
08. {
09. static$realip;
10. if(isset($_SERVER)){
11. if(isset($_SERVER["HTTP_X_FORWARDED_FOR"])){
12. $realip=$_SERVER["HTTP_X_FORWARDED_FOR"];
13. }elseif(isset($_SERVER["HTTP_CLIENT_IP"])) {
14. $realip=$_SERVER["HTTP_CLIENT_IP"];
15. }else{
16. $realip=$_SERVER["REMOTE_ADDR"];
17. }
18. }else{
19. if(getenv("HTTP_X_FORWARDED_FOR")){
20. $realip=getenv("HTTP_X_FORWARDED_FOR");
21. }elseif(getenv("HTTP_CLIENT_IP")) {
22. $realip=getenv("HTTP_CLIENT_IP");
23. }else{
24. $realip=getenv("REMOTE_ADDR");
25. }
26. }
27.  
28.  
29. return$realip;
30. }
31.  
32.  
33. /**
34. * 获取 IP  地理位置
35. * 淘宝IP接口
36. * @Return : array
37. */
38. functiongetCity($ip)
39. {
41. $ip=json_decode(file_get_contents($url));  
42. if((string)$ip->code=='1'){
43. returnfalse;
44. }
45. $data=$ip->data->city;
46. return$data;  
47. }
48.  
49. functiongetWeather($cityId)
50. {
51. $url="http://m.weather.com.cn/data/".$cityId.".html";
52. $weather=json_decode(file_get_contents($url));
53. return$weather;   
54. }
55. functionjson_to_array($web){
56. $arr=array();
57. foreach($webas$k=>$w){
58. if(is_object($w))$arr[$k]=json_to_array($w);//判断类型是不是object
59. else$arr[$k]=$w;
60. }
61. return$arr;
62. }
63. $city= getCity(getIP());
64. $city=str_split($city,strlen($city)-3);
65. $city=$city[0];
67. $web=json_decode(file_get_contents($cityUrl));
68. $arr=json_to_array($web);
69. $weatherInfo= getWeather($arr[$city]);
70. echo('weather(');
71. echo(json_encode($weatherInfo));
72. echo(")");
73.  
74. ?>

城市源码 http://www.php100.com/uploadfile/2013/0923/20130923081358704.rar
01. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
02. <htmlxmlns="http://www.w3.org/1999/xhtml">
03. <head>
04. <metahttp-equiv="Content-Type"content="text/html; charset=utf-8"/>
05. <title>无标题文档</title>
06. <linkrel="stylesheet"href="main.css"type="text/css"/>
07. </head>
08.  
09. <body>
10. <divclass="top">
11. <divclass="top_content">
12. <divid="calendarArea"> <spanclass="datepic"> <fontid="weekday"></font> </span>
13. <ul>
14. <li> <spanid="lunarday"></span> </li>
15. <li> <spanid="dateday"></span> </li>
16. </ul>
17. </div>
18. <divid="topWeatherArea">
19. <ulclass="cityWrap">
20. <liclass="name">
21. <spanclass="name"></span>
22. </li>
23. <li>
24. <spanclass="info"></span>
25. </li>
26. </ul>
27. <spanclass="weapic"></span>
28. <ulclass="cityInfo">
29. <liclass="name">
30. <spanclass="name"></span>
31. </li>
32. <li>
33. <spanclass="info"></span>
34. </li>
35. </ul>
36. </div>
37. </div>
38. </div>
39. <scripttype="text/javascript"src="../../js/jquery.js"></script>
40. <scripttype="text/javascript"src="../../js/loadjs.js"></script>
41. <scripttype="text/javascript">
42. var weatherInfo;
43. var lunar;
44. var date = new Date();
45. var g={"晴":"0 0px","多云":"0 -40px","暴雪":"0 -480px","大雪-暴雪":"0 -480px","暴雨":"0 -360px","大雨-暴雨":"0 -360px","暴雨-大暴雨":"0 -360px","大暴雨-特大暴雨":"0 -360px","大暴雪":"0 -480px","飑":"0 -880px","大雪":"0 -440px","中雪-大雪":"0 -440px","大雨":"0 -320px","中雨-大雨":"0 -320px","浮层":"0 -920px","雷阵雨":"0 -160px","雷阵雨并伴有冰雹":"0 -200px","霾":"0 -920px","轻雾":"0 -840px","雾":"0 -840px","冰雹":"0 -680px","沙尘暴":"0 -760px","强沙尘暴":"0 -760px","特大暴雪":"0 -520px","小雪":"0 -600px","小雨":"0 -240px","扬沙":"0 -720px","浮尘":"0 -920px","龙卷风":"0 -800px","弱高吹雪":"0 -600px","阴":"0 -80px","雨夹雪":"0 -400px","冻雨":"0 -960px","阵雪":"0 -560px","阵雨":"0 -120px","中雪":"0 -640px","小雪-中雪":"0 -640px","小雨-中雨":"0 -280px","中雨":"0 -280px"};
46. $(document).ready(function() {
47. $("#weekday").html(date.getDate());
48. $.getScript("getWeather.php");
49. $.getScript("lunar.php");
50. });
51. var weather = function(data){
52. weatherInfo = data;
53. $(".cityWrap .name").html(data.weatherinfo.city);
54. $(".cityInfo .name").html(data.weatherinfo.weather1);
55. $(".cityWrap .info").html(data.weatherinfo.city_en);
56. $(".cityInfo .info").html(data.weatherinfo.st1+"℃");
57. $(".weapic").css("background-position",g[data.weatherinfo.weather1]).show();
58. }
59. var lunar = function(data){
60. lunar = data;
61. var month = data.month;
62. var day = data.day;
63. $("#lunarday").html("农历"+month+day);
64. $("#dateday").html(date.getFullYear()+"."+(date.getMonth()+1)+"."+date.getDate()+"&nbsp;"+getWeek(date.getDay()));
65. }
66. var getWeek = function(day){
67. switch(day){
68. case 0:
69. return "周一";
70. case 1:
71. return "周二";
72. case 2:
73. return "周三";
74. case 3:
75. return "周四";
76. case 4:
77. return "周五";
78. case 5:
79. return "周六";
80. case 6:
81. return "周日";   
82. }
83. }
84. </script>
85. </body>
86. </html>
001. @charset"utf-8";
002. * {
003. padding:0;
004. margin:0;
005. border:none;
006. text-decoration:none;
007. list-style:none;
008. overflow:hidden;
009. }
010. input, button, select, textarea {
011. outline:none;
012. }
013. textarea {
014. font-size:13px;
015. resize:none;
016. }
017. body {
018. background:#F2F2F2url(http://imghao.qq.com/haoqq/v101/v1img/xs-bg.png)topcenterno-repeat;
019. }
020. .top{
021. width:100%;
022. height:65px;
023. }
024. .top_content {
025. width:960px;
026. height:65px;
027. margin:0auto;
028. }
029. #calendarArea {
030. width:155px;
031. height:65px;
032. float:left;
033. cursor:pointer;
034. padding-left:15px;
035. }
036. #calendarArea:hover, #topWeatherArea:hover {
037. background:url(http://imghao.qq.com/haoqq/v101/v1img/top-hover.png)topright;
038. }
039. .datepic {
040. background-image:url(http://imghao.qq.com/haoqq/v101/v1img/pur-sprite.png);
041. background-repeat:no-repeat;
042. width:31px;
043. height:32px;
044. float:left;
045. text-align:center;
046. font-size:16px;
047. font-weight:bold;
048. line-height:32px;
049. display:block;
050. margin:15px10px00;
051. float:left;
052. }
053. #weekday {
054. position:relative;
055. top:4px;
056. color:#fff;
057. }
058. #calendarArea ul {
059. float:left;
060. color:#fff;
061. height:40px;
062. padding-top:13px;
063. padding-left:3px;
064. }
065. #calendarArea #lunarday {
066. font-size:16px;
067. font-weight:bold;
068. }
069. #calendarArea #dateday {
070. font-size:14px;
071. }
072. #topWeatherArea {
073. width:165px;
074. height:65px;
075. float:left;
076. cursor:pointer;
077. color:#fff;
078. padding-left:10px;
079. }
080. .cityWrap {
081. float:left;
082. margin-top:15px;
083. padding-left:5px;
084. }
085. .weapic {
086. width:40px;
087. height:40px;
088. background-image:url(http://imghao.qq.com/haoqq/v101/v1img/pur-sprite-wea.png);
089. float:left;
090. display:block;
091. margin:15px5px05px;
092. background-repeat:no-repeat;
093. display:none;
094. }
095. .cityInfo {
096. float:left;
097. margin-top:15px;
098. }
099. .name{
100. font-weight:bold;
101. font-size:17px;
102. }
103. .info{
104. font-size:14px;
105. }
001. <?php
002. classLunar {
003. public$MIN_YEAR= 1891;
004. public$MAX_YEAR= 2100;
005. public$lunarInfo=array(array(0,2,9,21936),array(6,1,30,9656),array(0,2,17,9584),array(0,2,6,21168),array(5,1,26,43344),array(0,2,13,59728),array(0,2,2,27296),array(3,1,22,44368),array(0,2,10,43856),array(8,1,30,19304),array(0,2,19,19168),array(0,2,8,42352),array(5,1,29,21096),array(0,2,16,53856),array(0,2,4,55632),array(4,1,25,27304),array(0,2,13,22176),array(0,2,2,39632),array(2,1,22,19176),array(0,2,10,19168),array(6,1,30,42200),array(0,2,18,42192),array(0,2,6,53840),array(5,1,26,54568),array(0,2,14,46400),array(0,2,3,54944),array(2,1,23,38608),array(0,2,11,38320),array(7,2,1,18872),array(0,2,20,18800),array(0,2,8,42160),array(5,1,28,45656),array(0,2,16,27216),array(0,2,5,27968),array(4,1,24,44456),array(0,2,13,11104),array(0,2,2,38256),array(2,1,23,18808),array(0,2,10,18800),array(6,1,30,25776),array(0,2,17,54432),array(0,2,6,59984),array(5,1,26,27976),array(0,2,14,23248),array(0,2,4,11104),array(3,1,24,37744),array(0,2,11,37600),array(7,1,31,51560),array(0,2,19,51536),array(0,2,8,54432),array(6,1,27,55888),array(0,2,15,46416),array(0,2,5,22176),array(4,1,25,43736),array(0,2,13,9680),array(0,2,2,37584),array(2,1,22,51544),array(0,2,10,43344),array(7,1,29,46248),array(0,2,17,27808),array(0,2,6,46416),array(5,1,27,21928),array(0,2,14,19872),array(0,2,3,42416),array(3,1,24,21176),array(0,2,12,21168),array(8,1,31,43344),array(0,2,18,59728),array(0,2,8,27296),array(6,1,28,44368),array(0,2,15,43856),array(0,2,5,19296),array(4,1,25,42352),array(0,2,13,42352),array(0,2,2,21088),array(3,1,21,59696),array(0,2,9,55632),array(7,1,30,23208),array(0,2,17,22176),array(0,2,6,38608),array(5,1,27,19176),array(0,2,15,19152),array(0,2,3,42192),array(4,1,23,53864),array(0,2,11,53840),array(8,1,31,54568),array(0,2,18,46400),array(0,2,7,46752),array(6,1,28,38608),array(0,2,16,38320),array(0,2,5,18864),array(4,1,25,42168),array(0,2,13,42160),array(10,2,2,45656),array(0,2,20,27216),array(0,2,9,27968),array(6,1,29,44448),array(0,2,17,43872),array(0,2,6,38256),array(5,1,27,18808),array(0,2,15,18800),array(0,2,4,25776),array(3,1,23,27216),array(0,2,10,59984),array(8,1,31,27432),array(0,2,19,23232),array(0,2,7,43872),array(5,1,28,37736),array(0,2,16,37600),array(0,2,5,51552),array(4,1,24,54440),array(0,2,12,54432),array(0,2,1,55888),array(2,1,22,23208),array(0,2,9,22176),array(7,1,29,43736),array(0,2,18,9680),array(0,2,7,37584),array(5,1,26,51544),array(0,2,14,43344),array(0,2,3,46240),array(4,1,23,46416),array(0,2,10,44368),array(9,1,31,21928),array(0,2,19,19360),array(0,2,8,42416),array(6,1,28,21176),array(0,2,16,21168),array(0,2,5,43312),array(4,1,25,29864),array(0,2,12,27296),array(0,2,1,44368),array(2,1,22,19880),array(0,2,10,19296),array(6,1,29,42352),array(0,2,17,42208),array(0,2,6,53856),array(5,1,26,59696),array(0,2,13,54576),array(0,2,3,23200),array(3,1,23,27472),array(0,2,11,38608),array(11,1,31,19176),array(0,2,19,19152),array(0,2,8,42192),array(6,1,28,53848),array(0,2,15,53840),array(0,2,4,54560),array(5,1,24,55968),array(0,2,12,46496),array(0,2,1,22224),array(2,1,22,19160),array(0,2,10,18864),array(7,1,30,42168),array(0,2,17,42160),array(0,2,6,43600),array(5,1,26,46376),array(0,2,14,27936),array(0,2,2,44448),array(3,1,23,21936),array(0,2,11,37744),array(8,2,1,18808),array(0,2,19,18800),array(0,2,8,25776),array(6,1,28,27216),array(0,2,15,59984),array(0,2,4,27424),array(4,1,24,43872),array(0,2,12,43744),array(0,2,2,37600),array(3,1,21,51568),array(0,2,9,51552),array(7,1,29,54440),array(0,2,17,54432),array(0,2,5,55888),array(5,1,26,23208),array(0,2,14,22176),array(0,2,3,42704),array(4,1,23,21224),array(0,2,11,21200),array(8,1,31,43352),array(0,2,19,43344),array(0,2,7,46240),array(6,1,27,46416),array(0,2,15,44368),array(0,2,5,21920),array(4,1,24,42448),array(0,2,12,42416),array(0,2,2,21168),array(3,1,22,43320),array(0,2,9,26928),array(7,1,29,29336),array(0,2,17,27296),array(0,2,6,44368),array(5,1,26,19880),array(0,2,14,19296),array(0,2,3,42352),array(4,1,24,21104),array(0,2,10,53856),array(8,1,30,59696),array(0,2,18,54560),array(0,2,7,55968),array(6,1,27,27472),array(0,2,15,22224),array(0,2,5,19168),array(4,1,25,42216),array(0,2,12,42192),array(0,2,1,53584),array(2,1,21,55592),array(0,2,9,54560));
006.  
007. /**
008. * 将阳历转换为阴历
009. * @param year 公历-年
010. * @param month 公历-月
011. * @param date 公历-日
012. */
013. functionconvertSolarToLunar($year,$month,$date){
014. //debugger;
015. $yearData=$this->lunarInfo[$year-$this->MIN_YEAR];
016. if($year==$this->MIN_YEAR&&$month<=2&&$date<=9){
017. returnarray(1891,'正月','初一','辛卯',1,1,'兔');
018. }
019. return$this->getLunarByBetween($year,$this->getDaysBetweenSolar($year,$month,$date,$yearData[1],$yearData[2]));
020. }
021.  
022. /**
023. * 将阴历转换为阳历
024. * @param year 阴历-年
025. * @param month 阴历-月,闰月处理:例如如果当年闰五月,那么第二个五月就传六月,相当于阴历有13个月,只是有的时候第13个月的天数为0
026. * @param date 阴历-日
027. */
028. functionconvertLunarToSolar($year,$month,$date){
029. $yearData=$this->lunarInfo[$year-$this->MIN_YEAR];
030. $between=$this->getDaysBetweenLunar($year,$month,$date);
031. $res=mktime(0,0,0,$yearData[1],$yearData[2],$year);
032.  
033. $res=date('Y-m-d',$res+$between*24*60*60);
034.  
035. $day       = split_date($res);
036. $year       =$day[0];
037. $month=$day[1];
038. $day       =$day[2];
039.  
040. returnarray($year,$month,$day);
041. }
042.  
043. /**
044. * 判断是否是闰年
045. * @param year
046. */
047. functionisLeapYear($year){
048. return(($year%4==0 &&$year%100 !=0) || ($year%400==0));
049. }
050.  
051. /**
052. * 获取干支纪年
053. * @param year
054. */
055. functiongetLunarYearName($year){
056. $sky=array('庚','辛','壬','癸','甲','乙','丙','丁','戊','己');
057. $earth=array('申','酉','戌','亥','子','丑','寅','卯','辰','巳','午','未');
058.  
059. $year=$year.'';
060. return$sky[$year{3}].$earth[$year%12];
061. }
062.  
063. /**
064. * 根据阴历年获取生肖
065. * @param year 阴历年
066. */
067. functiongetYearZodiac($year){
068. $zodiac=array('猴','鸡','狗','猪','鼠','牛','虎','兔','龙','蛇','马','羊');
069. return$zodiac[$year%12];
070. }
071.  
072. /**
073. * 获取阳历月份的天数
074. * @param year 阳历-年
075. * @param month 阳历-月
076. */
077. functiongetSolarMonthDays($year,$month){
078. $monthHash=array('1'=>31,'2'=>$this->isLeapYear($year)?29:28,'3'=>31,'4'=>30,'5'=>31,'6'=>30,'7'=>31,'8'=>31,'9'=>30,'10'=>31,'11'=>30,'12'=>31);
079. return$monthHash["$month"];
080. }
081.  
082.  
083. /**
084. * 获取阴历月份的天数
085. * @param year 阴历-年
086. * @param month 阴历-月,从一月开始
087. */
088. functiongetLunarMonthDays($year,$month){
089. $monthData=$this->getLunarMonths($year);
090. return$monthData[$month-1];
091. }
092.  
093. /**
094. * 获取阴历每月的天数的数组
095. * @param year
096. */
097. functiongetLunarMonths($year){
098.  
099. $yearData=$this->lunarInfo[$year-$this->MIN_YEAR];
100. $leapMonth=$yearData[0];
101.  
102. $bit=decbin($yearData[3]);
103. for($i= 0;$i<strlen($bit);$i++) {
104. $bitArray[$i] =substr($bit,$i, 1);
105. }
106.  
107. for($k=0,$klen=16-count($bitArray);$k<$klen;$k++){
108. array_unshift($bitArray,'0');
109. }
110.  
111. $bitArray=array_slice($bitArray,0,($leapMonth==0?12:13));
112. for($i=0;$i<count($bitArray);$i++){
113. $bitArray[$i] =$bitArray[$i] + 29;
114. }
115.  
116. return$bitArray;
117. }
118.  
119. /**
120. * 获取农历每年的天数
121. * @param year 农历年份
122. */
123. functiongetLunarYearDays($year){
124. $yearData=$this->lunarInfo[$year-$this->MIN_YEAR];
125. $monthArray=$this->getLunarYearMonths($year);
126. $len=count($monthArray);
127. return($monthArray[$len-1]==0?$monthArray[$len-2]:$monthArray[$len-1]);
128. }
129.  
130. functiongetLunarYearMonths($year){
131. //debugger;
132. $monthData=$this->getLunarMonths($year);
133. $res=array();
134. $temp=0;
135. $yearData=$this->lunarInfo[$year-$this->MIN_YEAR];
136. $len= ($yearData[0]==0?12:13);
137. for($i=0;$i<$len;$i++){
138. $temp=0;
139. for($j=0;$j<=$i;$j++){
140. $temp+=$monthData[$j];
141. }
142. array_push($res,$temp);
143. }
144. return$res;
145. }
146.  
147. /**
148. * 获取闰月
149. * @param year 阴历年份
150. */
151. functiongetLeapMonth($year){
152. $yearData=$this->lunarInfo[$year-$this->MIN_YEAR];
153. return$yearData[0];
154. }
155.  
156. /**
157. * 计算阴历日期与正月初一相隔的天数
158. * @param year
159. * @param month
160. * @param date
161. */
162. functiongetDaysBetweenLunar($year,$month,$date){
163. $yearMonth=$this->getLunarMonths($year);
164.  
165. $res=0;
166. for($i=1;$i<$month;$i++){
167. $res+=$yearMonth[$i-1];
168. }
169. $res+=$date-1;
170.  
171. return$res;
172. }
173.  
174. /**
175. * 计算2个阳历日期之间的天数
176. * @param year 阳历年
177. * @param cmonth
178. * @param cdate
179. * @param dmonth 阴历正月对应的阳历月份
180. * @param ddate 阴历初一对应的阳历天数
181. */
182. functiongetDaysBetweenSolar($year,$cmonth,$cdate,$dmonth,$ddate){
183.  
184. $a=mktime(0,0,0,$cmonth,$cdate,$year);
185. $b=mktime(0,0,0,$dmonth,$ddate,$year);
186.  
187. returnceil(($a-$b)/24/3600);
188. }
189.  
190. /**
191. * 根据距离正月初一的天数计算阴历日期
192. * @param year 阳历年
193. * @param between 天数
194. */
195. functiongetLunarByBetween($year,$between){
196. //debugger;
197. $lunarArray=array();
198. $yearMonth=array();
199. $t=0;
200. $e=0;
201. $leapMonth=0;
202. $m='';
203.  
204. if($between==0){
205. array_push($lunarArray,$year,'正月','初一');
206. $t= 1;
207. $e= 1;
208. }else{
209. $year=$between>0?$year: ($year-1);
210. $yearMonth=$this->getLunarYearMonths($year);
211. $leapMonth=$this->getLeapMonth($year);
212. $between=$between>0?$between: ($this->getLunarYearDays($year)+$between);
213.  
214. for($i=0;$i<13;$i++){
215. if($between==$yearMonth[$i]){
216. $t=$i+2;
217. $e=1;
218. break;
219. }elseif($between<$yearMonth[$i]){
220. $t=$i+1;
221. $e=$between-(emptyempty($yearMonth[$i-1])?0:$yearMonth[$i-1])+1;
222. break;
223. }
224. }
225. $m= ($leapMonth!=0&&$t==$leapMonth+1)?('闰'.$this->getCapitalNum($t- 1,true)):$this->getCapitalNum(($leapMonth!=0&&$leapMonth+1<$t?($t-1):$t),true);
226.  
227. array_push($lunarArray,$year,$m,$this->getCapitalNum($e,false));
228. }
229. array_push($lunarArray,$this->getLunarYearName($year));//天干地支
230. array_push($lunarArray,$t,$e);
231. array_push($lunarArray,$this->getYearZodiac($year));//12生肖
232. array_push($lunarArray,$leapMonth);//闰几月
233. return$lunarArray;
234. }
235.  
236. /**
237. * 获取数字的阴历叫法
238. * @param num 数字
239. * @param isMonth 是否是月份的数字
240. */
241. functiongetCapitalNum($num,$isMonth){
242. $isMonth=$isMonth|| false;
243. $dateHash=array('0'=>'','1'=>'一','2'=>'二','3'=>'三','4'=>'四','5'=>'五','6'=>'六','7'=>'七','8'=>'八','9'=>'九','10'=>'十 ');
244. $monthHash=array('0'=>'','1'=>'正月','2'=>'二月','3'=>'三月','4'=>'四月','5'=>'五月','6'=>'六月','7'=>'七月','8'=>'八月','9'=>'九月','10'=>'十月','11'=>'冬月','12'=>'腊月');
245. $res='';
246.  
247. if($isMonth){
248. $res=$monthHash[$num];
249. }else{
250. if($num<=10){
251. $res='初'.$dateHash[$num];
252. }elseif($num>10&&$num<20){
253. $res='十'.$dateHash[$num-10];
254. }elseif($num==20){
255. $res="二十";
256. }elseif($num>20&&$num<30){
257. $res="廿".$dateHash[$num-20];
258. }elseif($num==30){
259. $res="三十";
260. }
261. }
262. return$res;
263. }
264.  
265. }
266. ?>
267. <?php
268. header('Access-Control-Allow-Origin: *');
269. header("Content-Type:text/javascript;charset=utf-8");
270. $lunar=newLunar();
271. $year=date("Y");
272. $month=date("n");
273. $day=date("j");
274. $ldate=$lunar->convertSolarToLunar($year,$month,$day);
275. echo('lunar({"year":"'.$ldate[0].'","month":"'.$ldate[1].'","day":"'.$ldate[2].'","zodiac":"'.$ldate[6].'","sign":"'.$ldate[3].'"})');
276. ?>

原文地址: http://www.php100.com/html/php/hanshu/2013/0923/6221.html

转载于:https://my.oschina.net/u/1259981/blog/170812

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值