【问题标题】:PHP change variable to corresponding typePHP将变量更改为相应的类型
【发布时间】:2015-04-01 13:28:34
【问题描述】:

我正在用 PHP 制作一个网站,其中包含不同的配置文件,具体取决于当时使用它的公司。

每家公司都有 +/- 15 个配置文件,其中包含所有相同的变量,但当然,不同的值。现在每家公司都必须能够轻松更改设置,因此我们将设置保存在 MySQL 数据库中。数据库有 3 列 'company_id'、'setting' 和 'value'。

当我从数据库中读取配置项时,变量类型始终是“字符串”。所以当然,if 语句 "if($setting->value === false)" 失败...

有没有一种简单的方法可以更改数据库中返回值对应的变量类型?

【问题讨论】:

  • 你试过 if(!$setting->value)
  • 你在寻找 settype php.net/manual/en/function.settype.php 吗?
  • @Sari Rahal:是的,我试过了,但即使 if 语句失败......
  • @Vladimir:我知道这个功能,但我仍然需要手动更改所有不同的值。

标签: php mysql variables variable-types


【解决方案1】:

如果您想在单个数据库列中存储任意类型,则必须将它们序列化为字符串表示形式,您可以从中再次取消序列化值。 PHP 为此提供了serializeunserialize,但您也可以使用与语言无关的格式,如JSON、XML 或YAML。

【讨论】:

  • 这正是我想要的!现在可以工作了。谢谢! :) 编辑 使用序列化和反序列化...
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-10
  • 1970-01-01
  • 1970-01-01
  • 2012-08-24
  • 2014-08-02
  • 1970-01-01
相关资源
最近更新 更多