【问题标题】:date conversion / extraction issue between mssql > php > mysqlmssql > php > mysql 之间的日期转换/提取问题
【发布时间】:2012-05-12 09:28:45
【问题描述】:

这是我的代码,然后是输出...

$PDate = $row['PDate'];  
//row is tapping into ms-sql date field. 
//and the ms-sql data field has a value like this for the PDate; 
//07/12/2001
$PDate = $PDate->date;
echo "<h1>[", $PDate , "]</h1>";
echo "<h1>[", var_dump($row['PDate']) , "]</h1>";
echo "<h1>[", serialize($row['PDate']) , "]</h1><hr>";

输出如下。我的问题嵌入在输出中。

[]      ??? WHY IS THIS BLANK? WHY IS THIS NOT 2001-12-07 00:00:00? 

[object(DateTime)#3 (3) { ["date"]=> string(19) "2001-12-07 00:00:00" ["timezone_type"]=> int(3) ["timezone"]=> string(19) "America/Los_Angeles" } ]

[O:8:"DateTime":3:{s:4:"date";s:19:"2001-12-07 00:00:00";s:13:"timezone_type";i:3;s:8:"timezone";s:19:"America/Los_Angeles";}]

【问题讨论】:

    标签: php mysql sql-server date object


    【解决方案1】:

    var_dump 的结果表明您正在使用 DateTime 对象。如果您希望日期的格式可以传输到输出或其他数据库,您可能想尝试将 $PDate(或 $row['PDate'])用作 DateTime 对象。

    例如:

    echo $PDate->format("Y-m-d")."\n";
    

    【讨论】:

      【解决方案2】:

      $PDate 存储表中的结果。那么为什么要把变量重新定义为一个不存在的对象中的变量呢。您是否尝试过仅使用$row['date'] 而不是将其分配给$PDate

      【讨论】:

      • 如果我这样做,我会在插入时得到这个;可捕获的致命错误:无法在第 379 行的 sql.php 中将 DateTime 类的对象转换为字符串
      猜你喜欢
      • 1970-01-01
      • 2011-11-11
      • 1970-01-01
      • 2015-08-24
      • 2010-09-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-05
      相关资源
      最近更新 更多