Во-первых, я очень рад, что наткнулся на этот сайт, ваши вопросы и ответы помогли мне с моими ранними заданиями :) Теперь мне нужна помощь :( Что я пытался сделать с моим кодом, так это создать таблицу, в которой она была бы 3 столбца " Продукт " " Описание " " Цена ". Под каждым из следующих заголовков я бы использовал свои массивы " $productImage
" под столбцом " Продукт " и т.д. Моя проблема в том, что я просто не могу показаться выяснить, как сделать таблицу при использовании функции foreach()
.
Любая помощь будет оценена!
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<?php
$productImage = array('http://www.rudebaguette.com/assets/PlayStation4 FeaturedImage.jpg', 'http://cdn0.mos.techradar.futurecdn.net//art/games_consoles/Xbox%20One/Press%20shots/Xbox%20One%20family-580-90.jpg', 'http://www.blogcdn.com/de.engadget.com/media/2009/08/razer-naga-mmo-mouse-all-set-to-create-a-new-world-record11.jpg', 'http://cdn1.mos.techradar.futurecdn.net//art/gadgets/Google%20Glass/google_glass_grey-580-90.jpg', 'http://img1.targetimg1.com/wcsstore/TargetSAS//img/p/10/02/10029875.jpg');
$description = array('PS4 ', 'Xbox One', 'Razer Naga', 'Google Glass', 'Magic Bullet');
$price = array('400', '350', '70', '300', '50');
echo '<table>';
foreach ($productImage as $pic)
{
echo '<tr>';
echo '<td>';
echo "<img src='".$pic."' width='200' height='180'>";
echo '</td>';
echo '</tr>';
}
foreach ($description as $des)
{
echo '<tr>';
echo '<td>';
echo $des;
echo '</td>';
echo '</tr>';
}
foreach ($price as $m)
{
echo '<tr>';
echo '<td>';
echo $m;
echo '</td>';
echo '</tr>';
}
?>
Попробуй это...
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<?php
$productImage = array('http://www.rudebaguette.com/assets/PlayStation4 FeaturedImage.jpg', 'http://cdn0.mos.techradar.futurecdn.net//art/games_consoles/Xbox%20One/Press%20shots/Xbox%20One%20family-580-90.jpg', 'http://www.blogcdn.com/de.engadget.com/media/2009/08/razer-naga-mmo-mouse-all-set-to-create-a-new-world-record11.jpg', 'http://cdn1.mos.techradar.futurecdn.net//art/gadgets/Google%20Glass/google_glass_grey-580-90.jpg', 'http://img1.targetimg1.com/wcsstore/TargetSAS//img/p/10/02/10029875.jpg');
$description = array('PS4 ', 'Xbox One', 'Razer Naga', 'Google Glass', 'Magic Bullet');
$price = array('400', '350', '70', '300', '50');
echo '<table>';
echo "<tr><td>Product</td><td>description</td><td>Price</td></tr>";
foreach ($productImage as $key=>$pic)
{
echo "<tr>";
echo '<td>';
echo "<img src='".$productImage[$key]."' width='200' height='180'>";
echo '</td>';
echo '<td>';
echo $description[$key];
echo '</td>';
echo '<td>';
echo $price[$key];
echo '</td>';
echo '</tr>';
}
?>
</body>
</html>
Вам понадобится только один цикл foreach, чтобы сделать что-то подобное, но вам нужно поместить все их в один и тот же массив:
<?php
// You can have an array of arrays, like such.
// This is called a multidimensional array
$array = array(
array(
'image' => '...',
'desc' => '...',
'price' => '...'
),
array(
...
)
);
?>
<table>
<?php foreach($array as $item): ?>
<tr>
<td><img src="<?php echo $item['image']; ?>: /></td>
<td><?php echo $item['desc']; ?></td>
<td><?php echo $item['price']; ?></td>
</tr>
<?php endforeach; ?>
</table>
Надеюсь это поможет.
здесь что-то, что я люблю использовать. это немного более общий.
<?php
$product_table = array(
array(
'image' => '<img src="http://www.rudebaguette.com/assets/PlayStation4 FeaturedImage.jpg" />',
'description' => 'PS4 ',
'price' => 400,
),
array(
'image' => '<img src="http://cdn0.mos.techradar.futurecdn.net//art/games_consoles/Xbox%20One/Press%20shots/Xbox%20One%20family-580-90.jpg" />',
'description' => 'Xbox One',
'price' => 350,
),
array(
'image' => '<img src="http://www.blogcdn.com/de.engadget.com/media/2009/08/razer-naga-mmo-mouse-all-set-to-create-a-new-world-record11.jpg" />',
'description' => 'Razer Naga',
'price' => 70,
),
array(
'image' => '<img src="http://cdn1.mos.techradar.futurecdn.net//art/gadgets/Google%20Glass/google_glass_grey-580-90.jpg" />',
'description' => 'Google Glass',
'price' => 300,
),
array(
'image' => '<img src="http://img1.targetimg1.com/wcsstore/TargetSAS//img/p/10/02/10029875.jpg" />',
'description' => 'Magic Bullet',
'price' => 50,
),
);
$first_row = TRUE;
echo '<table>';
foreach ($product_table as $product_row) {
echo "<tr>";
foreach ($product_row as $column_name => $column_value) {
if ($first_row) {
printf("<th>%s</th>", $column_name);
$first_row = FALSE;
} else {
printf("<td>%s</td>", $column_value);
}
}
echo "</tr>";
}
echo "</table>";
попробуйте этот код, это поможет вам.
echo "<table>";
for($index=0; $index<count($productImage); $index++)
{
echo"<tr>";
echo "<td><img src='{$productimage[$index]}' width='200' height='180'></td>";
echo "<td>{$description[$index]}</td>";
echo "<td>{$price[$index]}</td>";
echo "</td>";
}
echo "</table>";
но для меня это нехорошее решение, вы должны использовать массив массивов вроде этого
$array = array(
array(
'image' => 'http://www.rudebaguette.com/assets/PlayStation4 FeaturedImage.jpg',
'desc' => 'PS4',
'price' => '400'
),
array(
...
)
);
и затем использовать этот цикл
echo "<table>";
foreach($array in $item)
{
echo"<tr>";
echo "<td><img src='{$item['image']}' width='200' height='180'></td>";
echo "<td>{$item['desc']}</td>";
echo "<td>{$item['price']}</td>";
echo "</td>";
}
echo "</table>";
<?php
$productImage = array('http://www.rudebaguette.com/assets/PlayStation4 FeaturedImage.jpg', 'http://cdn0.mos.techradar.futurecdn.net//art/games_consoles/Xbox%20One/Press%20shots/Xbox%20One%20family-580-90.jpg', 'http://www.blogcdn.com/de.engadget.com/media/2009/08/razer-naga-mmo-mouse-all-set-to-create-a-new-world-record11.jpg', 'http://cdn1.mos.techradar.futurecdn.net//art/gadgets/Google%20Glass/google_glass_grey-580-90.jpg', 'http://img1.targetimg1.com/wcsstore/TargetSAS//img/p/10/02/10029875.jpg');
$description = array('PS4 ', 'Xbox One', 'Razer Naga', 'Google Glass', 'Magic Bullet');
$price = array('400', '350', '70', '300', '50');
?>
<table>
<tr>
<th>Image</th>
<th>Description</th>
<th>Price</th>
</tr>
<?php foreach ($productImage as $key => $value)
{ ?>
<tr>
<td><img src="<?php echo $value; ?>" /></td>
<td><?php echo $description[$key]; ?></td>
<td><?php echo $price[$key]; ?></td>
</tr>
<?php }
?>
</table>