gpt4 book ai didi

php - MySQL 中存储数组与关联表

转载 作者:行者123 更新时间:2023-11-30 00:09:53 25 4
gpt4 key购买 nike

我已经在很多地方和这个网站上查看过,并且我正处于开发阶段。我正在制作一个网站并使用 MySQL 来使用 PHP 存储内容。该网站的一部分是我想存储用户玩的游戏类型,这些类型将分为三个类别:游戏/平台/用户名。

作为一名编码员,我想制作一组并行向量/数组列表来保存这些东西,因为它们可能玩的游戏数量是未定义的。我正在考虑制作一个表格,但每次我尝试它都不会出现在数据库中。根据我的发现,人们说不要在数据库中使用数组,因为这会破坏数据库的用途。我将如何动态存储这些字段?

另外,从我发现的情况来看,有一个叫做 serialize() 的东西,我不明白如何使用它,我可以查一下。然而,人们说这不是做这样的事情的“正确”方式,但他们可能是错的。

最佳答案

Serialize 获取一个数组并将其转换为字符串。然后,您可以获取该字符串并将其保存为单个表条目。

可能会是这样的:

$user = array();

$games = array();

$games[] = array("Game" => "Chess", "Platform" => "Computer", "UserName" => "ChessMaster");
$games[] = array("Game" => "Checkers", "Platform" => "Mobile", "UserName" => "CheckersPlayer");
$games[] = array("Game" => "Solitaire", "Platform" => "Computer", "UserName" => "SolitaireUser");

$user[] = $games;

现在,为了将条目保存到数据库中,您可以使用serialize() 将用户数组转换为字符串。

$serializedUser = serialize($user);

这将输出:

//echo $serializedUser;

a:1:{i:0;a:3:{i:0;a:3:{s:4:"Game";s:5:"Chess";s:8:"Platform";s:8:"Computer";s:8:"UserName";s:11:"ChessMaster";}i:1;a:3:{s:4:"Game";s:8:"Checkers";s:8:"Platform";s:6:"Mobile";s:8:"UserName";s:14:"CheckersPlayer";}i:2;a:3:{s:4:"Game";s:9:"Solitaire";s:8:"Platform";s:8:"Computer";s:8:"UserName";s:13:"SolitaireUser";}}}

关于php - MySQL 中存储数组与关联表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24170134/

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