Can';t从MySQL获取结果访问JSON对象,PHP

Can';t从MySQL获取结果访问JSON对象,PHP,php,mysql,json,Php,Mysql,Json,我正在做一个PHP项目,它有一个更新产品数据的函数, 情况是产品有大量数据,更新后,我将所有数据打包为JSON对象并存储到MySQL数据库中。将所有内容打包到一个JSON对象中并存储为一个MySQL行的原因是:在这个项目中,不同的产品具有不同的属性,因此我认为这将是临时存储数据的快速解决方案 问题是,当我从MySQL数据库中取回某些JSON对象时,我无法访问JSON对象,我使用了JSON解码,但它不起作用 下面是我如何创建JSON对象的 $product_INFO = (object)array

我正在做一个PHP项目,它有一个更新产品数据的函数, 情况是产品有大量数据,更新后,我将所有数据打包为JSON对象并存储到MySQL数据库中。将所有内容打包到一个JSON对象中并存储为一个MySQL行的原因是:在这个项目中,不同的产品具有不同的属性,因此我认为这将是临时存储数据的快速解决方案

问题是,当我从MySQL数据库中取回某些JSON对象时,我无法访问JSON对象,我使用了JSON解码,但它不起作用

下面是我如何创建JSON对象的

$product_INFO = (object)array(
    "ean_number" => "$Static_eanNumber",
    "product_name" => "$productName",
    "product_brand" => "$Brand",
    "product_weight_gr" => "$weight_GR",
    "product_vatrate" => "$vat__Rate",
    "product_supplier" => "$SUPPLIER",
    "product_googleShoppingCategory" => "$GOOGLE_ShoppingCategory",
    "LIGHTSPEED_INFO" => $LIGHTSPEED_product_info_array
);
编码

  $Data_in_JSON = json_encode($product_INFO);
质疑

  $write_JSON_object = "INSERT INTO editing ( eannumber, json) VALUES ('$Static_eanNumber','$Data_in_JSON')";
在mysql数据库表中,JSON的列是 名称:json类型:长文本排序规则:utf8mb4_bin

当我从数据库获取数据时,我使用这个查询

   $find = "SELECT json FROM editing WHERE eannumber = 10000007 ";

我尝试使用JSON解码MySQL获取结果,但它不起作用,因此我无法通过其键(如“ean_number”)访问此结果

我不知道我在哪里犯了错误,我用错误的方式创建了一个JSON对象?MySQL有问题,或者我如何获取数据


请帮忙,谢谢

您的代码适用于我,但您也可以将
json\u decode($mysqlJSON)->ean\u number
更改为
json\u decode($mysqlJSON)
,然后访问所需的属性:


你在哪里解码数据库中的数据?我可以问你关于编码和解码的问题吗?文本包含HTML标记,这是同一个应用程序,但我有一个问题,如果文本I编码和解码包含HTML标记,我无法解码回来。我尝试了从PHP.net中找到的一些解决方案,但没有成功。如果你能帮助我,我将不胜感激,非常感谢much@LevittShanHe也许这对你有帮助?
   if (($found->num_rows) == 1) {

    $mysqlJSON = mysqli_fetch_array($found)[0];
    echo "<pre>";
    print_r($mysqlJSON);
    echo "</pre>";

}
  {"ean_number":"10000007",
  "product_name":"somevalue",
  "product_brand":"Leba",
  "product_weight_gr":"65000",
  "product_vatrate":"0.21",
  "product_supplier":"LebaBenelux",
  "product_googleShoppingCategory":"",
  "LIGHTSPEED_INFO":    [{"product_shop_id":68295980,"product_price":"2854.9533"..........
   print_r(json_decode($mysqlJSON)->ean_number);
$json = '{"ean_number":"10000007",
  "product_name":"somSomething is wrongue",
  "product_brand":"Leba",
  "product_weight_gr":"65000",
  "product_vatrate":"0.21",
  "product_supplier":"LebaBenelux",
         "product_googleShoppingCategory":""}';


$decoded = json_decode($json);

echo $decoded->ean_number;