查询中的PHP数组

查询中的PHP数组,php,arrays,Php,Arrays,有没有什么办法,可以做出这样的事情: $elements_string = array() foreach ($something as $element => $value ) { $elements_string[$element] = $value; ... } 并将$elements\u字符串保存到db行中 也许你们更喜欢别的方式 我不想从数据库中读取它,这样我就可以轻松地解析字符串 早些时候,我使用了类似于: $elements_string = $element . ":"

有没有什么办法,可以做出这样的事情:

$elements_string = array()
foreach ($something as $element => $value ) {
$elements_string[$element] = $value;
...
}
并将$elements\u字符串保存到db行中

也许你们更喜欢别的方式

我不想从数据库中读取它,这样我就可以轻松地解析字符串

早些时候,我使用了类似于:

$elements_string = $element . ":" . $value;

我试图使用explode,但这没有意义,因为对于一个元素,我需要在一个循环中包含$element和$value。

通常,您会将每个元素和值存储在不同的行中

如果必须将它们存储在一行中(并确保确实必须这样做),则使用
serialize()
将数组转换为可以存储的字符串

您可以做其他喜欢的事情:value:element;value:element-然后先用分号拆分,然后用冒号拆分。

如果您有一个从未使用过的字符,可以使用内爆(胶水、碎片)将数组转换为具有给定分隔符的字符串。(并分解(分隔符、字符串)以将其取回)


不过,在大多数情况下,序列化可能是更好的选择。使用序列化(值)来存储它,使用非序列化(值)来取回它。

为什么要将数组保存到单个列中?您将无法直接查询或更新列中的内容。serialize输出类似于json吗?类似,但serialize支持的数据类型多于json。但是serialize只适用于PHP,json有更广泛的支持。