php获取SQLserver数据库中的datetime类型数据,然后根据日期得到星座。求可执行代码。

如题。现在我遇到两个问题,一个是不知道获取来的数据如:$rs->Fields[1]->Value;得到的是什么类型;第二个是该怎么得到这个日期中的月份和日。得不到月和日当然就没办法算星座。

//计算datetime所属星座
$dateTime = '2011-10-09 10:00:00';//数据库查询出的时间
$dateTime = substr($dateTime,5,5);//截取出月份与日期
// echo $dateTime;
$dateArray = explode("-",$dateTime);//将字符串分割成数组
$month = $dateArray[0];//月份
$day = $dateArray[1];//日期
if($month=='02'&&$day>=19||$month=='03'&&$day<=20)
{
$constellation = "双鱼座";
}
elseif($month=='03'&&$day>=21||$month=='04'&&$day<=19)
{
$constellation = "白羊座";
}elseif($month=='04'&&$day>=20||$month=='05'&&$day<=20)
{
$constellation = "金牛座";
}elseif($month=='05'&&$day>=21||$month=='06'&&$day<=21)
{
$constellation = "双子座";
}elseif($month=='06'&&$day>=22||$month=='07'&&$day<=22)
{
$constellation = "巨蟹座";
}elseif($month=='07'&&$day>=23||$month=='08'&&$day<=22)
{
$constellation = "狮子座";
}elseif($month=='08'&&$day>=23||$month=='09'&&$day<=22)
{
$constellation = "处女座";
}elseif($month=='09'&&$day>=23||$month=='10'&&$day<=23)
{
$constellation = "天秤座";
}elseif($month=='10'&&$day>=24||$month=='11'&&$day<=21)
{
$constellation = "天蝎座";
}elseif($month=='11'&&$day>=22||$month=='12'&&$day<=21)
{
$constellation = "射手座";
}elseif($month=='12'&&$day>=22||$month=='01'&&$day<=19)
{
$constellation = "摩羯座";
}elseif($month=='01'&&$day>=20||$month=='02'&&$day<=18)
{
$constellation = "水瓶座";追问

首先感谢您的解答,不过您好像忽略了我的第一个问题。你在解答中已经设定了日期的格式,但是我发现从数据库中读取的日期格式并不完全一样,例如:在我电脑上输出的格式是“2011-10-9 10:00:00”,怎么在不确定日期格式的情况下获取月和日?是不是一定要先对日期格式化?我从数据库里读出的数据该怎么格式化?

追答

既然是datetime的时间格式 那么其格式必然是同“2011-10-9 10:00:00”一样的形式,所以这个日期你直接从数据库读出就好了。数据库信息资料你应该有吧?怎么会不知道日期格式呢。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-10-09
这个先设定时间,然后设定星座,这些都需要你事先知道的
相似回答