$astroDir
=
'./'
;
$astroArray
=
array
(
'白羊座'
=>
array
(
'aries'
,
'03/21-04/19'
),
'金牛座'
=>
array
(
'taurus'
,
'04/20-05/20'
),
'双子座'
=>
array
(
'gemini'
,
'05/21-06/21'
),
'巨蟹座'
=>
array
(
'cancer'
,
'06/22-07/22'
),
'狮子座'
=>
array
(
'leo'
,
'07/23-08/22'
),
'处女座'
=>
array
(
'virgo'
,
'08/23-09/22'
),
'天秤座'
=>
array
(
'libra'
,
'09/23-10/23'
),
'天蝎座'
=>
array
(
'scorpio'
,
'10/24-11/22'
),
'射手座'
=>
array
(
'sagittarius'
,
'11/23-12/21'
),
'魔羯座'
=>
array
(
'capricorn'
,
'12/22-01/19'
),
'水瓶座'
=>
array
(
'aquarius'
,
'01/20-02/18'
),
'双鱼座'
=>
array
(
'pisces'
,
'02/19-03/20'
)
);
function
generateAstro(){
global
$astroDir
,
$astroArray
;
$fileLog
=
$astroDir
.
'.log'
;
$log
=
is_file
(
$fileLog
) ? json_decode(
file_get_contents
(
$fileLog
)) : false;
if
(!isset(
$log
->latestTime) ||
$log
->latestTime (.*?)<em>(.*?).*?有效日期:(.*?)综合运势(.*?)爱情运势(.*?)工作状况(.*?)理财投资(.*?)健康指数(.*?)商谈指数(.*?)幸运颜色(.*?)幸运数字(.*?)速配星座(.*?)<div
class
=
"lotconts"
>(.*?)/isu
', curl('
http:
file_put_contents
(
$astroDir
.
$astro
[0].
'.dat'
, json_encode(
array
(
$matches
[1],
$matches
[2], html2txt(
$matches
[3]), substr_count(
$matches
[4], '<img substr_count html2txt
file_put_contents
json_encode alt=
"新浪星座API免费开放星座运势 12生肖工作 爱情 理财 健康 商谈 风水学 速配"
> html2txt(
$matches
[3]))));
unset(
$matches
);
}
}
function
getAstroByDate(
$date
){
global
$astroArray
;
foreach
(
$astroArray
as
$k
=>
$v
){
$value
=
explode
(
'-'
,
$v
[1]);
if
(
date
(
$value
[0]) ]*?>.*?@si',
'@]*?>@si'
,
'@<style>]*?>.*?</style>@siU'
,
'@@'
,
'@\s+| @'
);
$text
= preg_replace(
$search
,
''
,
$document
);
return
$text
;
}
function
curl(
$url
,
$type
){
$ch
= curl_init();
curl_setopt(
$ch
, CURLOPT_URL,
$url
);
curl_setopt(
$ch
, CURLOPT_RETURNTRANSFER, 1);
curl_setopt(
$ch
, CURLOPT_REFERER,
'http://astro.sina.com.cn/fate/astro_'
.
$type
.
'.html?prourl=0'
);
curl_setopt(
$ch
, CURLOPT_USERAGENT,
'Mozilla/'
.mt_rand(2, 9).
'.0 (Windows NT 6.1; WOW64; rv:'
.mt_rand(10, 30).
'.0) Gecko/'
.mt_rand(2000, 2014).
'0101 Firefox/'
.mt_rand(10, 30).
'.0'
);
curl_setopt(
$ch
, CURLOPT_HEADER, 0);
$data
= curl_exec(
$ch
);
curl_close(
$ch
);
return
$data
;
}
function
isBirthDate(
$date
)
{
if
(
empty
(
$date
) ||
$date
==
'0000-00-00'
)
return
false;
if
(preg_match(
'/^([0-9]{4})-((?:0?[1-9])|(?:1[0-2]))-((?:0?[1-9])|(?:[1-2][0-9])|(?:3[01]))([0-9]{2}:[0-9]{2}:[0-9]{2})?$/'
,
$date
,
$birth_date
))
{
return
(
$birth_date
[1].
'-'
.
$birth_date
[2].
'-'
.
$birth_date
[3]
<p> </p>
<p
class
=
"item-note"
><br></p>
</div></em>