1

很长一段时间以来,我一直想问这个问题,但我无法(而且还没有)想出一个合适的标题来描述这个问题。英语不是我的母语,我什至不知道这个概念叫什么。忍受我...

直到最近,当从数据库中获取结果时,我只需要以它们的存储方式输出它们。所以当我这样做的时候

SELECT name, gender, country FROM contacts

我只需要输出它

echo $result['name'] . " - " . $result['gender'] . " - " . $result['country'];.

国家名称按其ISO国家代码存储在数据库中。这意味着美国存储为 USA,巴西存储为 BRA。这样做的目的是确保与其他系统的兼容性。另一方面,用户不想处理这些国家代码,他们希望看到完整的国家名称。

同样,在搜索给定国家的所有联系人时,他们希望能够在搜索框中输入完整的国家名称,而不是ISO-code

我如何为这些结果分配标签(如果您愿意,可以使用人类可读的值)?

我在没有框架的情况下使用 PHP,但我确实遵循MVC类比(业务逻辑和表示分离)。这将如何适应MVC架构?

4

1 回答 1

1

表“联系人”包含列名称、性别、国家 ISO 代码。表“country_labels”包含国家 ISO 代码和标签。

MySQL:

SELECT * FROM contacts INNER JOIN country_labels ON contacts.country=country_labels.country

PHP:

echo $result['name'] . " - " . $result['gender'] . " - " . $result['label'];.
于 2012-09-16T05:36:52.273 回答