php - 清空 php 中 $array[] 的旧值

标签 php mysql

我正在尝试删除在互联网上搜索的数组的旧值,我刚刚找到了使用此方法unset() solution但我的情况似乎有所不同,这是我的完整代码

<?php



header('Content-type: application/json; charset=utf-8');
$link = mysqli_connect("localhost","root","");
mysqli_query($link,"SET NAMES UTF8");
$db= mysqli_select_db($link,"Mirsa") or die("Cannot select Database.");



 if (isset($_GET['Product_ID']) ){
   $productId;
    $Menu_ID =$_GET['Product_ID'];



$query = "SELECT 
   mirsaProductId,mirsaProductCode,mirsaProductDescription,
   mirsaProductPcsInCartoon,mirsaProductWeight,mirsaProductVolume,
    mirsaProductCodeBType,mirsaProductCodeCType,FK_mirsaCategoryId 
   from mirsaProduct WHERE FK_mirsaCategoryId='$Menu_ID'";



    $result = mysqli_query($link,$query) or die(mysql_error($link));

                $response["Products"] = array();
                $products = array();
         while ($row = mysqli_fetch_array($result)) {
                $image[]=array()         
                $products["mirsaProductId"] =          $row["mirsaProductId"];
                $products["mirsaProductCode"]         = $row["mirsaProductCode"];
                $products["mirsaProductDescription"]  = $row["mirsaProductDescription"];
                $products["mirsaProductPcsInCartoon"] = $row["mirsaProductPcsInCartoon"];
                $products["mirsaProductWeight"] =      $row["mirsaProductWeight"];
                $products["mirsaProductVolume"] =       $row["mirsaProductVolume"];
                $products["mirsaProductCodeBType"] =   $row["mirsaProductCodeBType"];
                $products["mirsaProductCodeCType"] =   $row["mirsaProductCodeCType"];
                $productId = $row["mirsaProductId"];




$query2 = "SELECT mirsaProductUrlImage FROM mirsaProduct,mirsaProductImages
WHERE FK_mirsaProductId = '$productId' GROUP BY mirsaProductUrlImage";     

    $result2=mysqli_query($link, $query2);
    while ($row2 = mysqli_fetch_array($result2))
      {
             $image [] = $row2["mirsaProductUrlImage"];
             $products["mirsaProductUrlImage"]=$image;
      }
     array_push($response["Products"], $products);





        }
                  die(json_encode($response));


  }

// echoing JSON response

 else {
// no products found
$response["success"] = 0;
$response["message"] = "No Products";
   die(json_encode($response));
 }
    ?>

我收到这样的回复

  {
 ProductId: "1",
 ProductCode: "118.023",
 ProductDescription: "NEM OVAL (Transparent)",
 ProductPcsInCartoon: "10",
 ProductWeight: "7.55 - 8.05(KG)",
 ProductVolume: "0.104(m3)",
 ProductCodeBType: "NA",
 ProductCodeCType: "NA",
 ProductUrlImage: [
  "1.png",
  "2.png"
 ]
 },


{
    ProductId: "2",
    ProductCode: "118.024",
    ProductDescription: "NEM OVAL (Opac)",
    ProductPcsInCartoon: "10",
    ProductWeight: "7.55 - 8.05(KG)",
    ProductVolume: "7.55 - 8.05(KG)",
    ProductCodeBType: "NA",
    ProductCodeCType: "NA",
    ProductUrlImage: [
            "1.png",
            "2.png"
          ]

第二个 JSON 对象不包含这 2 个图像 url,它采用 $image[] 的旧值,因此我需要重新初始化或清空他的值,我需要你们的帮助,你们永远是我们的支持

最佳答案

我要来一搏。因为您从未真正将 $image 初始化为数组。您实际上打算:

$image[] = array()

成为:

$image = array();

这将导致每次通过第一个 while 循环时都会重置 $image 数组。

关于php - 清空 php 中 $array[] 的旧值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43641332/

相关文章:

php - Mysql 重复结果

mysql - 我可以在 SQL 查询中执行 not in except for 吗?

未定义 Python 全局名称 'urls' 问题

mysql - SQL where 子句连接不起作用

php - HTML-PHP 登录后和登录前

php - 列出并展开

mysql - 这意味着什么“如果值大于可以存储的最大整数,则自动增量机制的行为未定义”

mysql - 错误号 150 : Foreign key constraint is incorrectly formed

php - 在函数内的 ECHO 内调用 PHP 函数

php - 准备好的语句如何在 SQL 级别上工作?