为什么类里面要定义静态常量啊?

DETAILS_TABLE

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
讨论数量: 7

我的理解是 account_details 这个值变了,只需要修改定义常量的这一行,不用动代码别的地方

7个月前 评论
xianyunyehe

常量不可变。一般定义一般具有语义的变量值。比如 状态

const SUCESS = 1
const ERROR = 0

//当你在代码中看到

// 这里为啥1 ? 
if ($status === 1) {

}

if ($status === static::SUCESS) {

}
7个月前 评论

不要使用魔法字符串和魔法数字,,,

7个月前 评论

静态常量?你为什么要在这里问静态常量?

7个月前 评论
LOST

可以理解为类的固有属性,不因实例化之后的对象不同而改变。
至于为什么这样用,可能要和开发者当时的想法有关了,毕竟没有硬性的规定。

7个月前 评论
Yesir (楼主) 7个月前

这样做语义明了,便于理解。方便静态调用不用实例化类,节省资源。
而且这些类常量可能会在其他地方被多次调用,便于修改

7个月前 评论

建议和数据库中状态有关的常亮都定义在相应的model里面,方便理解

7个月前 评论

请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!