Witajcie,
Jak mogę ze zmiennej $zmienna zrobić tablicę, dzięki której po wpisainu nazwatablicy[0] pokaże się test1 i analogicznie nazwatablicy[1] pokaże się test2?
Kod:
<?php
$zmienna = "test1,test2";
?>
Witajcie,
Jak mogę ze zmiennej $zmienna zrobić tablicę, dzięki której po wpisainu nazwatablicy[0] pokaże się test1 i analogicznie nazwatablicy[1] pokaże się test2?
Kod:
<?php
$zmienna = "test1,test2";
?>
A czy próbowałeś skorzystać z funkcji explode
?
https://www.php.net/manual/en/function.explode.php
LUB
https://kursphp.com/rozdzial-4/explode/
cerrato napisał(a):
A czy próbowałeś skorzystać z funkcji
explode
?https://www.php.net/manual/en/function.explode.php
LUB
https://kursphp.com/rozdzial-4/explode/
Pasuje idealnie, dziękuję.
A dlaczego, kiedy chcę zrobić z tego zmienną sesyjną i ją wywołam, to pokazuje:
Notice: Array to string conversion in C:\xampp\htdocs\sklep\przegladaj.php on line 141
Array
Jak temu zapobiec? Kod:
$nazwyproduktow = $_SESSION['nazwyproduktow'];
$_SESSION['produktyTablica'] = explode(",", $nazwyproduktow);
echo $_SESSION['produktyTablica'];
$_SESSION['produktyTablica']
zawiera tablicę, więc nie możesz jej wyświetlić za pomocą echo
- wykorzystaj var_dump
.
Dobrze, wyświetla, ale trochę za dużo informacji:
array(2) { [0]=> string(16) "Kupa rzadka 64/2" [1]=> string(20) "Kuchnia mini zabawka"
`$nazwyproduktow = $_SESSION['nazwyproduktow'];
$_SESSION['produktyTablica'] = explode(",", $nazwyproduktow);
var_dump($_SESSION['produktyTablica']);
``
Wiem, że głupie nazwy, ale to strona z głupim humorem
w sesji nie można trzymać tablic, musisz tę tablice zakodować np tworząc json i wtedy ją zapiszesz a to odczytu parsujesz jsona i masz z powrotem tablice.
Może dokumentację wyślij (JSONa)
No, jakiś poradnik albo coś, co tłumaczy jak to zrobić
Wpisałem, ale szukałem po polsku
Mam takie coś:
<?php
$nazwyproduktow = $_SESSION['nazwyproduktow'];
$tablicaProduktow = explode(",", $nazwyproduktow);
$tablicaJSON = json_encode($tablicaProduktow);
$_SESSION['tablicaProduktow'] = $tablicaJSON;
$doodkodowaniaProdukty = $_SESSION['tablicaProduktow'];
$odkodowaneProdukty = var_dump(json_decode($doodkodowaniaProdukty));
echo $odkodowaneProdukty;
?>
I rezultat:
array(2) { [0]=> string(16) "Kupa rzadka 64/2" [1]=> string(20) "Kuchnia mini zabawka" }
Jak mogę się pozbyć tych szczegółów w rezultacie?
Jakich szczegółów?
Patryk27 napisał(a):
Jakich szczegółów?
No tego string(16), aby tylko te nazwy zostały
Zależy jakiego efektu oczekujesz ;-)
foreach ($produkty as $produkt) {
echo $produkt . '<br>';
}