Intereting Posts
легкий сервер RESTful PHP Как управлять активами в Yii2? Передать переменные расширенному классу Как мне импортировать продукты в Magento, используя прямое подключение к базе данных Как декодировать строку JSON с несколькими объектами в PHP? Создание новой записи и отношений за один раз Обновление базы данных на __destruct ()? Получающий почтовый сервер вставляет пространство перед каждой новой строкой, разбивая множественные / альтернативные Используйте случай для буферизации вывода как правильное решение для «уже отправленных заголовков», Разделить платеж Paypal на две учетные записи Как установить заголовок по умолчанию в Guzzle? 2 штуки аналогичного PHP, один работает один нет? Загрузить вид из помощника Codeigniter? Ожидаемый код ответа 220, но получил код «», с сообщением «» в Laravel показать контент на основе зарегистрированного пользователя user = role в wordpress с помощью PHP

PHP – Управление данными из csv в цикле

Я работаю над проектом, где мне нужно получить доступ к файлу .dat, содержащему мои данные, в формате csv, а затем использовать его для создания страницы продуктов для воображаемого сайта электронной коммерции. Я сделал это так, что у меня появилось правильное количество изображений / информации, но я не могу манипулировать массивами, чтобы я мог представить конкретные фрагменты.

Мой .dat-файл выглядит так:

1001,Logitech G703,Wireless gaming mouse,$99.99,mouse.jpg 1002,Microsoft Keyboard,Bluetooth mechanical keyboard,$59.99,keyboard.jpg 1003,Bose Speaker,Teal wireless surround sound speaker,$159.99,speaker.jpg 1004,KickSTART,Grape flavored Mountain Dew KickSTART,$1.49,kickstart.jpg 1005,Google Pixel,Google's first real smartphone,$799.99,pixel.jpg 1006,Canon EOS REBEL,24.2 Megapixel,$849.00,canon.jpg 1007,Surface Pro 4,128GB 4GB RAM Intel Core i5=>$698.99,surface.jpg 1008,Luna,Siberian Husky Female,$999999.99,luna.jpg 1009,Loki,Siberian Husky Male,$999999.99,loki.jpg 1010,Coffee Mug,"This coffee is making me awesome!",$5.00,mug.jpg 

И все остальное выглядит так:

 <?php $data = file('products.dat'); foreach ($data as $products){ $i++; $dataExplode = explode(",", $products[$i]); ?> <div class="product"> <image class="product_image" src="img/loki.jpg"> <?php print $products; ?> <br>$20.99 <form method="post" action="viewcart.php?action=add&code=<?php echo $product_array[$key]["code"]; ?>"> <div><input type="text" name="quantity" value="1" size="2" /><input type="submit" value="Add to cart" class="btnAddAction" /></div> </div> <?php }; ?> 

При использовании print на $ products в моем цикле foreach он отображает информацию о продукте в последовательном порядке, как я хочу, но я не могу сузить его и использовать строки, разделенные запятыми. Кроме того, мне нужно иметь возможность отображать изображения, связанные с каждым продуктом, но также не смогли найти рабочий метод для этого.

Я ценю помощь и совет!

Вам не нужно указывать $ i внутри массива продуктов, который указывает на каждый столбец без учета строк.

Вам нужно взорваться по строкам \n а затем по запятой для каждой строки (продукта).

Когда вы берете линию продуктов и взорвали ее, она становится массивом.

 $data= file('products.dat'); foreach ($data as $line){ $product = explode(",",$line); $id = $product[0]; $title = $product[1]; $price = $product[2]; $description = $product[3]; $image = $product[4]; } 

Надеюсь это поможет.