-
Notifications
You must be signed in to change notification settings - Fork 175
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
formatDateTime处理'datetime_format' => '\\app\\common\\util\\ModelDateTime'的问题 #603
Comments
设计如此 返回对象是为了方便你在输出时调用这个对象的方法来输出不同的格式 |
这样吗?在thinkphp的database.php配置中,如果设置'datetime_format' => '\app\common\util\ModelDateTime', 在哪里调用 这个对象的方法来输出,好像这里的这个转换是tp自动 完成的? |
任何你用到这个字段的地方 比如你模板里可以调用 user->create_time->fromNow() 或者 user->create_time->format('xxxx') 只是直接转字符串时有个默认的格式而已 |
感谢,但是如果是api项目,就得每次再转换这个create_time,如果'datetime_format' => 'Y-m-d H:i:s'这样设置,就会得到Y-m-d H:i:s 这样的格式的结果,如果设置为格式化类'datetime_format' => '\app\common\util\ModelDateTime'就要二次format .. |
你的ModelDateTime实现下 JsonSerializable就可以了 可以在api json_encode输出的时候自动转成你想要的格式 |
感谢大佬! |
这里的代码是不是有问题,在数据库配置中, 'datetime_format' => '\app\common\util\ModelDateTime',我传递的类,最终返回的是一个对象。这应该是一个历史遗留问题,在thinkphp view视图中,使用的是 echo $object,会自动调用__toString(),但如果不是在view中,就不会调用__toString()了,所以 return new $format($time) 会得到结果 “{}”
The text was updated successfully, but these errors were encountered: