PHP:MYSQL行到数组

PHP:MYSQL行到数组,php,mysql,arrays,mysqli,Php,Mysql,Arrays,Mysqli,我有点小问题,希望你能帮我。。。在我的mysql表中名为size的行中,我有: “X”=>“11”、“S”=>“22”、“M”=>“33”、“L”=>“44” 我想把它放在一个数组中,这样我就可以把它发布到我的select $x = mysqli_query($mysql_link, "SELECT * FROM dagenshug_produkt WHERE varenummer = '$produktid'"); while($row = mysqli_fetch_assoc($x)) {

我有点小问题,希望你能帮我。。。在我的mysql表中名为
size
的行中,我有:

“X”=>“11”、“S”=>“22”、“M”=>“33”、“L”=>“44”

我想把它放在一个数组中,这样我就可以把它发布到我的select

$x = mysqli_query($mysql_link, "SELECT * FROM dagenshug_produkt WHERE varenummer = '$produktid'");
while($row = mysqli_fetch_assoc($x)) {
    $sizearray = array($row['size']);
    print_r($sizearray);
}
这将返回:

数组([0]=>“XS”=>“11”、“S”=>“22”、“M”=>“33”、“L”=>“44”)

但是我想

数组(“XS”=>“11”、“S”=>“22”、“M”=>“33”、“L”=>“44”)

谁能帮我一点忙


我将此作为答案发布,因为这将是龙的评论。
我稍后会删除它,因为它不是你问题的真正答案

你需要重新设计你的数据库。请阅读关系数据库设计

一种(简单的)可能性是每个大小有一个表字段。 这种设计的缺点是,如果f.e.一种产品发明了一种称为XMS的新尺寸,那么你就是f*了,需要重写大量代码。
这就是关系表出现的地方。如果您有一个额外的表,可以保存每个产品的所有尺寸,您就可以了

这样的尺寸表可以如下所示:

product_sizes
----------------
id          // unique id of this entry (int, auto_incement)
label       // 'XS', ...
size        // '22',...
product_id  // the id of the product it refers to

但是,所有这些想法都取决于您的要求,我们不知道。

您问错了问题。正如评论中提到的,您需要重新设计数据库

您不必开发通用的产品变体(颜色、尺寸、材质等)

你的产品在一张桌子上,它们都有一个唯一的ID。很好。在另一个表中,存储您的尺寸:

  • id:整数自动递增(PK)
  • 尺码名称:2XS、XS、L、M、L、XL、XXL、3XL
  • 尺寸描述(用于后台办公室的信息用途)
  • 产品类型(或产品类别)。请记住,XL是衬衫尺码,而10是鞋码
数据透视表,具体化产品和尺寸之间的关系:

  • 产品标识
  • 尺码
此表可能包含关系数据,如额外成本(有时较大的尺寸更具扩展性)等

为了更好,您可以将关联sizeproduct类型存储在另一个表中。在您的后台办公室中,有必要允许将某些尺寸应用于适当的产品

无论如何。在phpMyAdmin中不会设计数据库。从未。有专门的工具,比如MySQL工作台。它将帮助您全面了解数据库

您还需要了解表示实体的表和由于技术原因而存在的表之间的区别(抱歉,在这种情况下,我的词汇有点有限)。数据透视表不是en实体,即使它可以携带数据(例如:用户添加到组的日期)

了解这些基础知识非常重要,它们将帮助您建立一个强大、安全、高效和快速的数据库。

我希望能对您有所帮助

$x = mysqli_query($mysql_link, "SELECT * FROM dagenshug_produkt WHERE varenummer = '$produktid'");
$row = mysqli_fetch_assoc($x);
$arr = explode(",",$row['size']);

$a=array();
foreach($arr as $n) {
$m = explode("=>",$n);
$a[$m[0]]= $m[1];
}

print_r($a);

欢迎来到StackOverflow!请提供有关数据库架构的更多信息(例如
DESC dagensshug\u produkt;
的结果)。你的数据似乎没有按照你想做的事情以适当的方式存储。我不能相信你发布的回报是你实际得到的回报。缺少括号和/或逗号。@Jeff比“他死了Jim,死了Jim”更糟糕的是,表中每个大小有一个字段,而不是试图将字符串解析数组保存到一个字段中。如果你不能做到这一点,请保存一个json并解析它。再次,这是一个:你问如何获取数据,而实际的问题是如何存储数据。这是多对多关系:一个产品可以有一个或多个大小,每个大小可以应用于一个或多个产品。。。应该有3个表来链接两个实体:
产品
尺寸
和关系表
产品_尺寸
我希望每个产品都有自己的尺寸集。就像意大利语的“小”和美国的“小”完全不同。但我们不知道马克的数据会是什么样子。我们给他指明了我猜的方向。感谢您提到MYSQL workbench-我搜索这样一个(免费)工具已经很久了,没有一个是我真正喜欢的,现在尝试这个!我从未见过任何电子商务软件这样做。产品变化不是电子商务软件要实现的简单功能。它需要很多表(比我们给出的示例中的3个表多得多)。正如我所说,轮子已经被发明了。为了做到完美,商店应该能够根据买方国家显示合适的尺码(欧盟鞋码与英国或美国不同,而美国的XL码t恤在欧盟也不能是L码:尺码写在标签上,句号)。但这样一个特性的实现将更加复杂,可能需要更多的表。