【问题标题】:Object of class DateInterval could not be converted to string in php类 DateInterval 的对象无法在 php 中转换为字符串
【发布时间】:2019-11-21 16:46:30
【问题描述】:

我已经尝试对已经转换为字符串的日期使用 diff。但我得到:

DateInterval 类的对象无法转换为字符串@die($hour);

代码如下:

        $signin  = $this->input->post('signin');
        $signout = $this->input->post('signout');
        $old_date           = $attdate; // returns Saturday, January 30 10 02:06:34
        $old_date_timestamp = strtotime($old_date);
        $new_date           = date('m/d/Y', $old_date_timestamp);


        // CHANGING THE DATE FORMAT FOR DB UTILITY
        $new_date_changed = date('Y-m-d', strtotime(str_replace('-', '/', $new_date)));

            $sin  = new DateTime($new_date . $signin);
            $sout = new DateTime($new_date . $signout);
            $hour = $sin->diff($sout);
            $work = $hour->format('%H h %i m');
            die($hour);

【问题讨论】:

    标签: php


    【解决方案1】:

    $hour 的变量不能作为字符串打印。

    使用var_dump($hour); die; 获取结果。

    【讨论】:

      【解决方案2】:

      这是因为变量不是一个刺,而是一个对象。

      改变

      die($hour);
      

      到:

      die($work);
      

      或:

      die($hour->format('%H h %i m'));
      

      取决于你想通过什么来死。

      Object DateTimeInterval 需要format 为您提供字符串

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-12-22
        • 2013-08-22
        • 2021-11-10
        • 2023-04-06
        • 2021-02-21
        • 2015-02-05
        相关资源
        最近更新 更多