• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Php, pomoc, pętla for each

Object Storage Arubacloud
+1 głos
174 wizyt
pytanie zadane 28 września 2020 w PHP przez JerzyJ Początkujący (350 p.)
Witam, jest mi ktoś w stanie pomóc w kodzie mianowicie:  W jaki sposób mógłbym spróbować opisać swój samochód (podstawowe element: marka, model, rok produkcji, moc, pojemnosc, zuzycie paliwa, przyspieszenie 0-100km/h [(s])  wykorzystując tablice asocjacyjne oraz wykorzystując funkcje for each?

3 odpowiedzi

+1 głos
odpowiedź 28 września 2020 przez Arkadiusz Waluk Ekspert (287,950 p.)

Ja trochę nie rozumiem co masz zrobić, jak dokładnie masz to opisać, w jaki sposób użyć tych tablic.

Pierwsze skojarzenie to coś takiego, że masz tablicę z danymi samochodu, iterujesz po nich i po prostu pokazujesz te dane:

$data = [
    'mark' => 'BMW',
    'model' => 'XYZ'
    // ...
];

foreach ($data as $key => $value) {
    echo $key . ': ' . $value . PHP_EOL;
}

Ale czy to jest jakikolwiek opis... Bardzo proste wyświetlenie danych, nie mam pojęcia czy o to chodzi.

komentarz 28 września 2020 przez JerzyJ Początkujący (350 p.)
Dokładnie o to chodzi
komentarz 28 września 2020 przez Arkadiusz Waluk Ekspert (287,950 p.)
W takim razie chyba już wiesz jak to sobie dostosować i przerobić, nic trudnego tu nie ma, prosta tablica do której możesz dodać co chcesz i dalej wyświetlanie tego w jakiejś formie, tak jak potrzebujesz.
1
komentarz 28 września 2020 przez JerzyJ Początkujący (350 p.)
Dziękuję za pomoc
+1 głos
odpowiedź 28 września 2020 przez VBService Ekspert (253,340 p.)
edycja 28 września 2020 przez VBService

Moja propozycja

<!DOCTYPE html>
<html>
<body>

<?php
$cars = array (
   array("brand"=>"Skoda","type"=>"Octavia","made"=>"2016","capacity"=>"2.0 TDI"),
   array("brand"=>"Audi","type"=>"A3","made"=>"2016","capacity"=>"1.6 TDI"),
   array("brand"=>"Ford","type"=>"C-MAX","made"=>"2015","capacity"=>"1.6 TDCI"),
   array("brand"=>"Skoda","type"=>"Octavia","made"=>"2016","capacity"=>"2.0 TDI")
);

$rows = "";
foreach ($cars as $row) {
   $rows .= "<tr><td>".$row['brand']."</td><td>".$row['type']."</td>"
           ."<td>".$row['made']."</td><td>".$row['capacity']."</td></tr>";
}
?>
<style>
table { width: 50vw; }
.header {
  background-color: grey;
  color: white;
}
</style>
<table>
  <thead class="header">
  <tr>
    <th>Marka</th>
    <th>Model</th>
    <th>Rok produkcji</th>
    <th>Pojemność</th>
  </tr>
  </thead>
  <?php echo $rows; ?>
</table>
</body>
</html>

 

P.S. How to Sort Multi-dimensional Array by Value?

komentarz 28 września 2020 przez JerzyJ Początkujący (350 p.)

Ciągle pokazuje mi błąd, co moze być nie tak?

 Parse error: syntax error, unexpected '<', expecting end of file in C:\xampp\htdocs\test\bez\index.php on line 17

1
komentarz 28 września 2020 przez VBService Ekspert (253,340 p.)

Moja wina zgubiłem przy wstawianiu kodu: ?> domknięcie php wink

}
?>
<style>

 

komentarz 28 września 2020 przez JerzyJ Początkujący (350 p.)


Notice: Undefined variable: rows in C:\xampp\htdocs\test\bez\index.php on line 15

1
komentarz 28 września 2020 przez VBService Ekspert (253,340 p.)

Dopisz $rows = "";

);
 
$rows = "";
foreach ($cars as $row) {
   $rows .= "<tr><td>".$row['brand']."</td><td>".$row['type']."</td>"
           ."<td>".$row['made']."</td><td>".$row['capacity']."</td></tr>";
}
?>
<style>

 

0 głosów
odpowiedź 28 września 2020 przez Bartek12 Mądrala (5,510 p.)
edycja 28 września 2020 przez Bartek12

EDIT

Tworzysz klasę car i tablicę cars, która zawiera klasy car, która natomiast zawiera informacje o samochodzie. Wypisujesz np.

cars[i]->model

Tu masz fajne przykłady o klasach i obiektach (też nawet o samochodzie)

https://kursphp.com/programowanie-obiektowe-php/klasy-obiekty/

komentarz 28 września 2020 przez JerzyJ Początkujący (350 p.)
Niestety, muszę zrobić to w Funkcji for-each...
komentarz 28 września 2020 przez Bartek12 Mądrala (5,510 p.)
Nie mogę dodać nowej odpowiedzi więc edytuje poprzednią
komentarz 28 września 2020 przez Arkadiusz Waluk Ekspert (287,950 p.)
Przecież jeśli chcemy iterować się po tablicy, tak jak pokazałeś, to właśnie foreach idealnie do tego pasuje. Dlaczego lepsza byłaby pętla for?

Podobne pytania

0 głosów
1 odpowiedź 765 wizyt
pytanie zadane 27 lipca 2017 w PHP przez paciek Początkujący (480 p.)
0 głosów
1 odpowiedź 1,191 wizyt
pytanie zadane 26 marca 2018 w Java przez newUser Użytkownik (520 p.)
0 głosów
0 odpowiedzi 132 wizyt

92,575 zapytań

141,425 odpowiedzi

319,650 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...