先尝试用 date 函数转换
比如你读取的数据在 $r 数组中,则
echo date('Y-m-d H:i:s', $r[0]['UpdateTime']);
看看如不行,则请贴出
echo serialize($r);
的结果
应该选择确实有值的记录

解决方案 »

  1.   

    ===源码
    $sqlsrv = new Sqlsrv();
    $sql = "SELECT TOP 1 [UpdateTime]
          ,[RegistTime]
          ,[EndTime]
      FROM [User] ";
    $stmt=$sqlsrv->select($sql);
    p($stmt);
    echo date('Y-m-d H:i:s', $stmt[0]['UpdateTime']);//此行没有被打印出来
    echo '<br/>';
    echo serialize($stmt);
    ===以下为打印结果
    Array
    (
        [0] => Array
            (
                [UpdateTime] => DateTime Object
                    (
                    )            [RegistTime] => DateTime Object
                    (
                    )            [EndTime] => DateTime Object
                    (
                    )        ))a:1:{i:0;a:3:{s:10:"UpdateTime";O:8:"DateTime":0:{}s:10:"RegistTime";O:8:"DateTime":0:{}s:7:"EndTime";O:8:"DateTime":0:{}}}
      

  2.   

    在sqlserver里面 是有数据的 不是空的 (在百度到的帖子里 别人读取的时间不友好 我遇到的却是一个datetime object 而且 用get_object_vars()得到的是一个空数组 真不知道怎么整这个对象)
    UserId Account PassWord LoginNumber UpdateTime RegistTime EndTime Status CreateTime MachineId
    10 P6000001 123456 4 2013-09-27 13:16:44.503 2013-03-21 10:18:37.000 2019-04-19 17:27:53.047 0 2013-04-19 17:27:53.050 135
      

  3.   

    代码在二楼 {sql server里 这三个字段的类型就是 datetime 难道跟mysql里的datetime不一样}
    我写了一个连接类
    class Sqlsrv{
    public $connect;
    function __construct($host="(local)",$uid="sa",$pwd="123456",$dbname="tupoemanager"){
    $connectionInfo =  array("UID"=>$uid,"PWD"=>$pwd,"Database"=>$dbname);
    $this->connect = sqlsrv_connect( $host,$connectionInfo);
    sqlsrv_query("set names 'utf8'");     
    //echo "<pre>";
    }
    //select
    function select($sql,$affected=2){
    $result = sqlsrv_query($this->connect,$sql);
    //var_dump($result);
    $resultArr = array();
    if($affected==2){  while($row =sqlsrv_fetch_array($result, SQLSRV_FETCH_ASSOC)){
    $resultArr[] =$row;
    }

    }else{
    $resultArr = sqlsrv_fetch_array($result, SQLSRV_FETCH_ASSOC);
    }
    return $resultArr;
    } //query
    function query($sql){
    return sqlsrv_query($this->connect,$sql);
    }
    //
    function affected($stmt){
    return sqlsrv_rows_affected( $stmt);
    }
    }
    date_default_timezone_set("PRC");