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

DETAILS_TABLE

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
讨论数量: 7

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

5年前 评论
xianyunyehe

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

const SUCESS = 1
const ERROR = 0

//当你在代码中看到

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

}

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

}
5年前 评论

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

5年前 评论

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

5年前 评论
LOST

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

5年前 评论
Yesir (楼主) 5年前

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

5年前 评论

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

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!