gpt4 book ai didi

php - 我应该将美国各州存储在我的数据库中还是 PHP 数组中?

转载 作者:可可西里 更新时间:2023-11-01 06:28:42 27 4
gpt4 key购买 nike

我应该如何存储状态和国家?

选项 1) 我可以创建一个名为 states 的数据库表,其中包含“id”、“state”和“state_abbr”。然后我可以在用户表中通过“id”引用它。

选项 2) 我可以创建一个 PHP 数组并使用它来填充状态下拉菜单,并避免完全查询数据库。数组的键是为该用户插入数据库的值。

状态不会改变,因此数据应该是静态的。存储此信息的最佳方式是什么?为什么? PHP 数组不会更快吗?为什么看起来数据库是存储它的最佳方式?

想法?

最佳答案

一位聪明的数据库设计师曾经告诉我,“你所知道的关于州代码的一切都是错误的。”

  • 这些是两个字母的代码,不是缩写。 (The abbreviation for California 是“加利福尼亚州”,俄亥俄州的缩写是“俄亥俄州”。)
  • There are more than 50 of them .
  • 并非所有的双字母代码都代表州。他们还提到“领地”,例如“密克罗尼西亚联邦”和“帕劳”。
  • 它们不是独一无二的。两个字母的代码 AE 指代四个不同的军事“国家”(欧洲武装部队、加拿大武装部队、中东武装部队和非洲武装部队)。
  • 军事“州”代码可能会随着部队兵力的变化而变化。向非洲 dispatch 数十万军队,您可能会看到非洲武装部队的代号从“AE”变为“AF”。
  • 还有十几个地区尚未在此列表中。其中一些具有战略意义(威克岛、中途岛等),它们的地位很容易改变。

鉴于您不太可能了解 USPS 州代码这样常见事物的所有这些信息,将它们存储在表中更有意义。与 PHP 数组相比,表在运行时更易于维护。

关于php - 我应该将美国各州存储在我的数据库中还是 PHP 数组中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12433137/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com