<span> 1 <span>
<span> 2 <span>
private
<span>
function
receiveText(<span>
$object
<span>){
<span> 3 <span>
<span> 4 <span>
$keyword
= <span>
$object
-><span>Content;
<span> 5 <span>
$keyword
=<span>preg_replace(
"/\s(?=\s)/"
,
"\\1"
,<span>
$keyword
<span>);
<span> 6 <span>
$funcFlag
= 0<span>;
<span> 7 <span>
if
(<span>
strpos
(<span>
$keyword
,
" "
<span>)){
<span> 8 <span>
<span> 9 <span>
$arr
= <span>
explode
(
" "
,<span>
$keyword
<span>);
<span>10 <span>
if
(<span>
$arr
[0]==
"天气"
<span>){
<span>11 <span>
$dateArray
= <span>
array
<span>();
<span>12 <span>
$ch
=<span> curl_init();
<span>13 <span>
$city
=<span>urlencode(<span>
$arr
[1<span>]);
<span>14 <span>
$url
=
'http://apis.baidu.com/apistore/weatherservice/recentweathers?cityname='
.<span>
$city
<span>;
<span>15 <span>
$header
= <span>
array
<span>(
<span>16
'apikey: 6512ad3a465e3a9e3d0d1da56639626c'
,
<span>17 <span> );
<span>18 curl_setopt(<span>
$ch
, CURLOPT_HTTPHEADER , <span>
$header
<span>);
<span>19 curl_setopt(<span>
$ch
, CURLOPT_RETURNTRANSFER, 1<span>);
<span>20 curl_setopt(<span>
$ch
, CURLOPT_URL , <span>
$url
<span>);
<span>21 <span>
$res
= curl_exec(<span>
$ch
<span>);
<span>22 <span>
$data
= json_decode(<span>
$res
,<span>true<span>);
<span>23 <span>
$cityname
=<span>
$data
[
'retData'
][
'city'
<span>];
<span>24 <span>
$citydate
=<span>
$data
[
'retData'
][
'today'
][
'date'
<span>];
<span>25 <span>
$cityweek
=<span>
$data
[
'retData'
][
'today'
][
'week'
<span>];
<span>26 <span>
$citytemp
=<span>
$data
[
'retData'
][
'today'
][
'curTemp'
<span>];
<span>27 <span>
$citypm
=<span>
$data
[
'retData'
][
'today'
][
'aqi'
<span>];
<span>28 <span>
$cityhightemp
=<span>
$data
[
'retData'
][
'today'
][
'hightemp'
<span>];
<span>29 <span>
$citylowtemp
=<span>
$data
[
'retData'
][
'today'
][
'lowtemp'
<span>];
<span>30 <span>
$citytype
=<span>
$data
[
'retData'
][
'today'
][
'type'
<span>];
<span>31 <span>
$cityfengli
=<span>
$data
[
'retData'
][
'today'
][
'fengli'
<span>];
<span>32 <span>
$cityfengxiang
=<span>
$data
[
'retData'
][
'today'
][
'fengxiang'
<span>];
<span>33 <span>
$cityforecast
=<span>
$data
[
'retData'
][
'forecast'
<span>];
<span>34
<span>35 <span>
$out
=
"今日温度:"
.<span>
$citylowtemp
.
"~"
.<span>
$cityhightemp
.
"\n\r"
.
"当前温度:"
.<span>
$citytemp
.
"\n\r"
.
"天气情况:"
.<span>
$citytype
.
"\n\r"
.
"PM2.5值:"
.<span>
$citypm
.
"\n\r风向风力:"
.<span>
$cityfengxiang
.
" "
.<span>
$cityfengli
<span>;
<span>36 <span>
$dateArray
[] = <span>
array
(
"Title"
=><span>
$cityname
.
"\n\r"
.<span>
$citydate
.
" "
.<span>
$cityweek
,
"Description"
=>
""
,
"Picurl"
=>
""
,
"Url"
=>
""
<span>);
<span>37 <span>
$dateArray
[] = <span>
array
(
"Title"
=><span>
$out
,
"Description"
=>
""
,
"Picurl"
=>
""
,
"Url"
=>
""
<span>);
<span>38 <span>
for
(<span>
$i
=0;<span>
$i
<<span>
count
(<span>
$cityforecast
);<span>
$i
++<span>){
<span>39 <span>
$outstr
=
"☀ "
.<span>
$cityforecast
[<span>
$i
][
"date"
].
" "
.<span>
$cityforecast
[<span>
$i
][
"week"
].
"\n\r气温:"
.<span>
$cityforecast
[<span>
$i
][
"lowtemp"
].
"~"
.<span>
$cityforecast
[<span>
$i
][
"hightemp"
].
"\n\r风力:"
.<span>
$cityforecast
[<span>
$i
][
"fengxiang"
].
" "
.<span>
$cityforecast
[<span>
$i
][
"fengli"
].
"\n\r天气:"
.<span>
$cityforecast
[<span>
$i
][
"type"
<span>];
<span>40 <span>
$dateArray
[] = <span>
array
(
"Title"
=><span>
$outstr
,
"Description"
=>
""
,
"Picurl"
=>
""
,
"Url"
=>
""
<span>);
<span>41 <span> }
<span>42 <span>
$resultStr
= <span>
$this
->transmitNews(<span>
$object
, <span>
$dateArray
, <span>
$funcFlag
<span>);
<span>43 <span> }
<span>44 }<span>
else
<span>{
<span>45 <span>
<span>46
if
(
$keyword
==
"天气"
){
47
$dateArray
=
array
();
48
$dateArray
[] =
array
(
"Title"
=>
"查询格式错误"
,
"Description"
=>
""
,
"Picurl"
=>
""
,
"Url"
=>
""
);
49
$dateArray
[] =
array
(
"Title"
=>
"正确格式例:天气 北京"
,
"Description"
=>
""
,
"Picurl"
=>
""
,
"Url"
=>
""
);
50
$resultStr
=
$this
->transmitNews(
$object
,
$dateArray
,
$funcFlag
);
51 }
52 }
53
return
$resultStr
;
54 }</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span>