NOVINKA - Online rekvalifikační kurz Python programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze – array_unique - Český PHP manuál

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Avatar
Pepa
Neregistrovaný
Avatar
Pepa:25.9.2013 12:34

Je nějaká funkce která odebere prvek třeba na 9 místě v poli; mám pole o 15 prvků které jsou seřazeny podle nějakých klíčů. chci odebrat prvek s klíčem 10. Jak?

 
Odpovědět
25.9.2013 12:34
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na
David Hartinger:28.9.2013 11:20

Můžeš použít unset(), ale indexy ti zůstanou nezměněné.

Odpovědět
28.9.2013 11:20
New kid back on the block with a R.I.P
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:28.9.2013 11:24

Však určitě potřebuje ponechat indexy. Vždyť pracuje s polem, u kterého se nic neposouvá. Kdyby posunout chtěl, použil by seznam.

Odpovědět
28.9.2013 11:24
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Kit
David Hartinger:28.9.2013 11:28

Tak potom takhle:

unset($pole[10]);
$pole = array_values($pole);
Odpovědět
28.9.2013 11:28
New kid back on the block with a R.I.P
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Kit
David Hartinger:28.9.2013 11:28

Seznam a pole je přeci v PHP to samé a obojí je vlastně slovník :D

Odpovědět
28.9.2013 11:28
New kid back on the block with a R.I.P
Avatar
Kit
Tvůrce
Avatar
Odpovídá na David Hartinger
Kit:28.9.2013 11:42

Pokud s polem chci pracovat jako se seznamem, musím o něm mluvit jako o seznamu, i když je to stejný datový typ. Je nutné tomu podřídit i název proměnné, který nemá vliv na aplikaci, ale na programátora. Z hlediska jazyka tedy jsou tyto zápisy stejné:

$pole = array();
$seznam = array();

ale z hlediska sémantiky je první proměnnou pole a druhou je seznam. Pokud pak dělám přiřazení, tak se to bude také lišit:

$pole[$i] = $hodnota;
$seznam[] = $hodnota;

To první je přidání prvku do pole, to druhé je přidání prvku na konec seznamu. Při výpisu na výstup opět bude rozdíl

for ($i = 0; $i < sizeof($pole); $i++) {
    echo $pole[$i];
}

vs.

foreach ($seznam as $radek) {
    echo $radek;
}

Práce s polem a seznamem se prostě liší, i když se jedná o totožný datový typ.

Odpovědět
28.9.2013 11:42
Vlastnosti objektů by neměly být veřejné. A to ani prostřednictvím getterů/setterů.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 6 zpráv z 6.