php显示来自sql的日期

时间:2016-10-27 11:50:30

标签: php mysql sql

我目前正在处理一个页面,我从数据库表中获取日期时遇到了问题。

看起来,我现在有一个自己的日期时间列的数组。

我的数据库的print_r:

var updatedODataResult = Updated(entity);
updatedODataResult.Request.Headers.Add("Prefer", "return=representation");

return updatedODataResult;

输出:

        $projwebt = $viewmanager->getViewPageProjwebtProjekte();
        echo "<pre>";
        print_r($projwebt);
        echo "</pre>";

工作正常:

        Array
        (
        [0] => viewPageProjwebtProjekte Object
        (
        [id] => 1
        [projectnumber] => 1
        [name] => Title
        [progress] => 37
        [status] => 1
        [responsible] => user
        [customer] => user
        [definition] => 1
        [effort] => 15
        [priority] => 12
        [startdate] => DateTime Object
            (
                [date] => 2016-11-25 00:00:00.000000
                [timezone_type] => 3
                [timezone] => Europe/Belgrade
            )

        [targetdate] => DateTime Object
            (
                [date] => 2017-08-31 00:00:00.000000
                [timezone_type] => 3
                [timezone] => Europe/Belgrade
            )

这里因为 startdate

而中断
        <?php
        foreach ( $projwebt as $projobject )
        {
        ?>
            <tr class="<?=$projobject->status?>">
                <th colspan="2"><h2><a href="#"><?=$projobject->name?></a></h2></th>
                <th colspan="2"><h2><?=$projobject->definition?></h2></th>
                <th colspan="2"><h2><?=$projobject->progress?>%</h2></th>
            </tr>
         <?php
         }
         ?>

的DataMapper:

            <tr>
                <td class="responsible">Zuständig:</td>
                <td class="responsibleName"><?=$projobject->responsible?></td>
                <td class="effort">Aufwand:</td>
                <td><?=$projobject->effort?> MT</td>
                <td class="start">Start:</td>
                <td class="startDate"><?=$projobject->startdate?></td>
            </tr>

viewmanager:

            $pageProjwebtProjekte->startdate = $row['startdate'];
            $pageProjwebtProjekte->targetdate = $row['targetdate'];

当我选择要显示的日期(面向对象)时,它会中断。

那么有没有办法选择数组startdate / targetdate的日期元素? 我必须在我的课程中设置什么(viewmanager / mapper ...)?

当我尝试显示定义或努力等时,我没有问题。

感谢您一看!

2 个答案:

答案 0 :(得分:3)

您有一个DateTime对象,而不是常规数组。做这样的事情:

<?= $startdate = $projobject->startdate->format('Y-m-d'); ?>

答案 1 :(得分:3)

如果要从DateTime对象回显日期,则应使用format方法。

实施例。 echo $projobject->startDate->format('Y-m-d');

您可以在此处查看文档: http://php.net/manual/es/class.datetime.php