Maison  >  Questions et réponses  >  le corps du texte

ThinkPHP5 récupère l'horodatage et le convertit automatiquement BUG, ​​​​s'il vous plaît donnez-moi quelques conseils ?

Dans TP5, j'ai utilisé le modèle pour obtenir une donnée, puis je l'ai sorti et j'ai signalé une erreur. J'ai trouvé que c'était l'horodatage qui était assez intelligent pour utiliser la méthode date() pour la formater, mais le create_time. défini dans ma table de données était du type horodatage et il a déjà été obtenu. Il s'agit d'une chaîne formatée, une erreur est donc signalée. .

Plus tard, j'ai vu une méthode officielle : définir la valeur datetime_format sur false pour désactiver la sortie de conversion automatique
Mais je l'ai essayée en vain, que dois-je faire ?

Code contrôleur :


Code modèle :


Fiche technique :


Capture d'écran d'erreur :


伊谢尔伦伊谢尔伦2665 Il y a quelques jours825

répondre à tous(2)je répondrai

  • 世界只因有你

    世界只因有你2017-06-05 11:09:42

    比如这个是你的模型
    namespace app\xxx\model;
    use think\Model as ThinkModel;
    use think\Db;
    
    class XXX extends ThinkModel
    {
        // 设置当前模型对应的完整数据表名称
        protected $table = 'XXXPPP';
    
        // 自动写入时间戳,这个是开关可以关闭
        protected $autoWriteTimestamp = true; 
        
        //这个可以覆盖的吧
        public function getCreteTimeAttr($time)
        {
            return $time;
        }
    }
    不过文档这里有写这个
    $user = User::get(1);
    // 通过获取器获取字段
    echo $user->status;
    // 获取原始字段数据
    echo $user->getData('status');
    // 获取全部原始数据
    dump($user->getData());
    

    répondre
    0
  • 为情所困

    为情所困2017-06-05 11:09:42

    Pensez à l'ajouter après la ligne 433

    $time = strtotime($time)!==false?strtotime($time):$time;

    répondre
    0
  • Annulerrépondre