将数组逐行存储到txt文件中


Store an array into a txt file line by line PHP

我不知道如何将整个数组存储到txt文件中。我的代码只存储foreach循环中最后一行运行的代码。

 $total_price = 0;
        foreach($_SESSION['shopping_cart'] as $id => $product) {
          $product_id = $product['product_id'];
          $total_price += $products[$product_id]['price'] * $product['quantity'];
          echo "<tr>
            <td style='border-bottom:1px solid #000000;'><a href='./PA3.php?view_product=$id'>" . 
              $products[$product_id]['name'] . "</a></td>
            <td style='border-bottom:1px solid #000000;'>$" . $products[$product_id]['price'] . "</td> 
            <td style='border-bottom:1px solid #000000;'>" . $product['quantity'] . "</td>
            <td style='border-bottom:1px solid #000000;'>$" . ($products[$product_id]['price'] * $product['quantity']) . "</td>
            <td style='border-bottom:1px solid #000000;'>" . $products[$product_id]['picture'] . "</td> 
          </tr>";
        }
      echo "</table>
      <p>Total price: $" . $total_price . "</p>";
      $filename='Order'.date('m-d-Y_hia').'.txt';
            file_put_contents($filename, json_encode($dataArray));  
  }

我想这是因为我在数组内部初始化它,但当我在数组外部初始化它时,我会得到一个索引错误。

试试这样的东西:

 $filename='Order'.date('m-d-Y_hia').'.txt';
 $fh = fopen($filename, 'w');
  $total_price = 0;
    foreach($_SESSION['shopping_cart'] as $id => $product) {
      $product_id = $product['product_id'];
      $total_price += $products[$product_id]['price'] * $product['quantity'];
      echo "<tr>
        <td style='border-bottom:1px solid #000000;'><a href='./PA3.php?view_product=$id'>" . 
          $products[$product_id]['name'] . "</a></td>
        <td style='border-bottom:1px solid #000000;'>$" . $products[$product_id]['price'] . "</td> 
        <td style='border-bottom:1px solid #000000;'>" . $product['quantity'] . "</td>
        <td style='border-bottom:1px solid #000000;'>$" . ($products[$product_id]['price'] * $product['quantity']) . "</td>
        <td style='border-bottom:1px solid #000000;'>" . $products[$product_id]['picture'] . "</td> 
      </tr>";
    }
  echo "</table>
  <p>Total price: $" . $total_price . "</p>";

  foreach($_SESSION['shopping_cart'] as $id => $product) {
     foreach($product as $k=>$v){
      $stringData = $k . ' - ' . $v . "'n";
       fwrite($fh, $stringData);
     }
  }
        //file_put_contents($filename, json_encode($dataArray));  
}

fclose($fh);