PHP: Přidávání a odebírání prvků pole. Přidání prvků do pole Vytvořte pole a přidejte data php

PHP Podporuje skalární a složené datové typy. V tomto článku se budeme zabývat jedním ze složených typů: poli. Pole je kolekce datových hodnot organizovaná jako uspořádaná sada párů klíč–hodnota.

Tento článek pojednává o vytváření pole, přidávání prvků do pole. Existuje mnoho vestavěných funkcí, které pracují s poli PHP protože pole jsou běžná a užitečná k použití. Pokud například chcete odeslat e-mail na více než jednu e-mailovou adresu, můžete e-mailové adresy uložit do pole a poté polem procházet a odesílat zprávy na e-mailovou adresu převzatou z pole.

Indexovaná a asociativní pole

V PHP existují dva typy polí: indexové a asociativní. Klíče indexovaného pole jsou celá čísla začínající od 0. Indexovaná pole se používají, když požadujete určitou pozici v poli. Asociativní pole se chovají jako dva sloupce tabulky. První sloupec je klíč, který se používá pro přístup k hodnotě (druhý sloupec).

PHP interně ukládá všechna pole jako asociativní pole, takže jediný rozdíl mezi asociativními a indexovanými poli je v tom, že se objevují klíče. Některé funkce jsou poskytovány primárně pro použití s ​​indexovanými poli, protože předpokládají, že vaše klíče jsou sekvenční celá čísla začínající na 0. V obou případech jsou klíče jedinečné – to znamená, že nemůžete mít dva prvky se stejným klíčem, bez ohledu na to, zda klíč je řetězec nebo celé číslo.

V PHP pole mají vnitřní pořadí svých prvků, které je nezávislé na klíčích a hodnotách, a existují funkce, které lze použít k procházení polí na základě tohoto vnitřního pořadí.

Definování prvků v poli

Ke konkrétním hodnotám z pole můžete přistupovat pomocí názvu pole následovaného klíčem prvku (někdy nazývaným index) v hranatých závorkách:

$věk["Fred"]; $ukazuje;

Klíčem může být řetězec nebo celé číslo. Řetězcové hodnoty jako čísla (bez úvodních nul) jsou považovány za celá čísla. Tím pádem, $array A $array['3'] odkazují na stejný prvek, ale $array[’03'] odkazuje na jiný prvek. Jako klíče lze také použít záporná čísla, ale neurčují pozice od konce pole, jako v Perl.

Klíč není nutné psát v uvozovkách. Například, $array['Fred'] jako $arrat. Nicméně je to považováno za dobrý styl PHP vždy používejte uvozovky. Pokud je index bez uvozovek, pak PHP použije jako index hodnotu konstanty:

Define("index",5); echo $array; // vrátí $array, nikoli $array["index"];

Pokud chcete do indexu nahradit číslo, musíte to udělat:

$věk["Klon$číslo"]; // vrátí, například $age["Clone5"];

Neuvádějte však klíč v následujícím případě:

// nesprávný tisk "Dobrý den, $person["jméno"]"; tisknout "Dobrý den, $person["jméno"]"; // správný tisk "Ahoj, $osoba";

Ukládání dat do polí

Když se pokusíte uložit hodnotu do pole, pole se automaticky vytvoří, pokud dříve neexistovalo, ale když se pokusíte načíst hodnotu z pole, které nebylo definováno, pole se nevytvoří. Například:

// $addresses není dosud definováno echo $addresses; // nic se neozývá $adresy; // nic $addresses = " [e-mail chráněný]"; echo $addresses; // tisk "Array"

K inicializaci pole v programu můžete použít jednoduché přiřazení:

$addresses = " [e-mail chráněný]"; $addresses = " [e-mail chráněný]"; $addresses = " [e-mail chráněný]"; // ...

Deklarovali jsme pole indexů s celočíselnými indexy začínajícími na 0.

Asociativní pole:

$cena["Těsnění"] = 15,29; $cena["Kolo"] = 75,25; $cena["Pneumatika"] = 50,00; //...

Jednodušší způsob, jak inicializovat pole, je použít konstrukt pole(), který sestaví pole ze svých argumentů:

$addresses = array(" [e-mail chráněný]", "[e-mail chráněný]", "[e-mail chráněný]");

Chcete-li vytvořit asociativní pole pomocí Array(), použití => symbol oddělující indexy od hodnot:

$price = array("Těsnění" => 15,29, "Kolo" => 75,25, "Pneumatika" => 50,00);

Věnujte pozornost využití mezer a zarovnání. Mohli bychom seskupit kód, ale bylo by to méně jasné:

$price = array("Gasket"=>15,29,"Kolo"=>75,25,"Pneumatika"=>50,00);

Chcete-li vytvořit prázdné pole, musíte zavolat konstrukt pole() bez argumentů:

$adresy = Array();

Můžete zadat počáteční klíč v poli a poté seznam hodnot. Hodnoty se zadávají do pole, počínaje klíčem a poté se zvyšují:

$days = array(1 => "pondělí", "úterý", "středa", "čtvrtek", "pátek", "sobota", "neděle"); // 2 je úterý, 3 je středa atd.

Pokud je počátečním indexem řetězec, pak se následující indexy stanou celými čísly počínaje 0. Následující kód je tedy pravděpodobně chyba:

$whoops = array("Pátek" => "Černá", "Hnědá", "Zelená"); // stejné jako $whoops = array("Pátek" => "Černá", 0 => "Hnědá", 1 => "Zelená");

Přidání nového prvku na konec pole

Chcete-li vložit více hodnot na konec existujícího indexovaného pole, použijte syntaxi:

$family = array("Fred", "Wilma"); // $family = "Fred" $family = "Kamínky"; // $family = "Oblázky"

Tato konstrukce předpokládá, že indexy pole jsou čísla a přiřadí prvku další dostupný číselný index počínaje 0. Pokus o přidání prvku do asociativního pole je téměř vždy chybou programátora, ale PHP přidá nové prvky s číselnými indexy (počínaje 0) bez varování:

$person = array("jméno" => "Fred"); // $person["jméno"] = "Fred"; $osoba = "Wilma"; // $person = "Wilma"

V této fázi dokončíme úvodní část práce s poli v PHP. Těším se na vás u dalšího článku.

Přidání prvků do pole

Pokud pole existuje, můžete do něj přidat další prvky. To se provádí přímo pomocí operátoru přiřazení (rovná se) stejným způsobem jako přiřazování hodnoty řetězci nebo číslu. V tomto případě nemusíte zadávat klíč přidaného prvku, ale v každém případě jsou při přístupu k poli vyžadovány hranaté závorky. Přidáním dvou nových prvků do $List napíšeme:

$Seznam = "hrušky";
$List = "rajčata";

Pokud klíč není zadán, bude každý prvek přidán do existujícího pole a indexován podle dalšího pořadového čísla. Pokud do pole z předchozí části přidáme nové prvky, jejichž prvky měly indexy 1, 2 a 3, pak hrušky budou mít index 4 a rajčata budou mít index 5. Když explicitně zadáte index a hodnota s ním je již existuje, stávající hodnota v daném umístění bude ztracena a nahrazena novou:

$Seznam = "hrušky";
$List = "rajčata";

Nyní je hodnota prvku s indexem 4 „rajčata“ a prvek „pomeranče“ tam již není. Doporučil bych nezadávat klíč při přidávání prvků do pole, pokud konkrétně nechcete přepsat jakákoli existující data. Pokud jsou však jako indexy použity řetězce, musí být klíče specifikovány, aby nedošlo ke ztrátě hodnot.

Pokusíme se přidat nové prvky do pole přepsáním skriptu soups.php. Tím, že nejprve vytiskneme původní prvky pole a poté ty původní spolu s přidanými, můžeme snadno vidět změny, ke kterým došlo. Stejně jako můžete zjistit délku řetězce (počet znaků, které obsahuje) pomocí funkce strlen(), je také snadné určit počet prvků v poli pomocí funkce count():

$HowMany = count($Array);

  1. Otevřete soubor soups.php v textovém editoru.
  2. Po inicializaci pole pomocí funkce array() přidejte následující položku:
  3. $HowMany = count($Polévky);
    print("Pole obsahuje $HowMany prvků.

    \n");

    Funkce count() určí, kolik prvků je v poli $Soups. Přiřazením této hodnoty proměnné ji lze vytisknout.

  4. Přidejte do pole tři další prvky.
  5. $Soups["Thursday"] = "Kuřecí nudle";
    $Soups["Friday"] = "Tomato";
    $Soups["Saturday"] = "Brokkolicový krém";
  6. Spočítejte prvky v poli a vytiskněte tuto hodnotu.
  7. $HowManyNow = count($Polévky);
    print("Pole nyní obsahuje prvky $HowManyNow.

    \n");

  8. Uložte skript (výpis 7.2), nahrajte jej na server a otestujte v prohlížeči (obr.).

Výpis 7.2 Můžete přímo přidat jeden prvek po druhém do pole přiřazením hodnoty každému prvku pomocí příslušného operátoru. Pomocí funkce count() lze zjistit, kolik prvků je v poli.

1
2
3 Použití polí</TITLEx/HEAD><br> 4 <BODY><br> 5 <?php<br>6 $Polévky = pole( <br>7 "Pondělí"=>"Polévka z škeblí", <br>8 "Úterý"=>"Bílé kuřecí chilli", <br>9 "Středa"=>"Vegetariánská"); <br><br>11 print("Pole obsahuje $HowMany <br>Prvky. <P>\n"); <br>12 $Soups["Thursday"] = "Kuřecí nudle"; <br>13 $Soups["Friday"] = "Tomato"; <br>14 $Soups["Saturday"] = "Smetana z <br>Brokolice"; <br>15 $HowManyNow = count($Polévky); <br>16 print("Pole nyní obsahuje <br>$HowManyNow elemente. <P>\n"); <br> 17 ?><br> 18 </BODY><br> 19 </HTML> </p><p>PHP 4.0 představilo novou funkci, která umožňuje přidávat jedno pole do druhého. Tuto operaci lze také nazvat sloučením nebo zřetězením polí. Funkce array_merge() se volá následovně:</p><p>$NewArray = array_merge($OneArray, $TwoArray);</p><p>Pokud pracujete na serveru s nainstalovaným PHP 4.0, můžete pomocí této funkce přepsat stránku soups.php.</p> <p>Sloučení dvou polí</p> <ol><li>Otevřete soubor soups.php v textovém editoru, pokud ještě není otevřený.</li> <li>Po inicializaci pole $Soups spočítejte jeho prvky a vytiskněte výsledek.</li>$HowMany = count($Polévky); <br>print("Pole $Soups obsahuje prvky $HowMany. <P>\n"); <ol>Vytvořte druhé pole, spočítejte jeho prvky a také vytiskněte výsledek.</ol>$Soups2 = pole( <br>"Čtvrtek"=>"Kuřecí nudle", <br>"Pátek"=>"Tomato", <br>"Sobota"=>"Brokkolicový krém"); <br>$HowMany2 = count($Polévky2); <br>print("Pole $Soups2 obsahuje prvky $HowMany2. <P>\n"); <li>Spojte dvě pole do jednoho.</li>$TheSoups = array_merge($Soups, $Soups2); <p>Ujistěte se, že jsou pole uspořádána v tomto pořadí ($Soups, potom $Soups2), to znamená, že prvky čtvrtek a pátek by měly být přidány k prvkům pondělí nebo středa a ne naopak.</p> <li>Spočítejte prvky nového pole a vytiskněte výsledek.</li>$HowMany3 = count($TheSoups); <br>print("Pole $TheSoups obsahuje <br>-$HowMany3 prvků. <P>\n"); <li>Zavřete PHP a HTML dokument.</li> ?></BODYx/HTML> <li>Uložte soubor (výpis 7.3), nahrajte jej na server a otestujte v prohlížeči (obr.).</li> </ol><img src='https://i1.wp.com/weblibrary.biz/bimages/php/img49.gif' height="256" width="217" loading=lazy loading=lazy><p>Výpis 7.3 Funkce Array_merge() je nová. Toto je jedna z několika dalších funkcí v PHP 4.0 navržených pro práci s poli. Použitím polí můžete ušetřit spoustu času.</p><p>1 <HTML><br> 2 <HEAD><br> 3 <TITLE>Použití polí</TITLEx/HEAD><br> 4 <BODY><br> 5 <?php<br>6 $ Polévky = pole! <br>7 "Pondělí"=>"Polévka z škeblí", <br>"Úterý"=>"Bílé kuřecí chilli", <br>8 "Středa"=>"Vegetariánská" <br> 9);<br>10 $HowMany = count($Polévky); <br>11 print("Pole $Soups obsahuje prvky $HowMany. <P>\n"); <br>12 $Soups2 = pole( <br>13 "Čtvrtek"=>"Kuřecí nudle", <br>14 "Pátek"=>"Tomato", <br>15 "Sobota"=>"Brokkolicový krém" <br> 16); .<br>17 $HowMany2 = počet($Polévky2); <br>18 print („Pole $Soups2 obsahuje prvky $HowMany2. <P>\n"); <br>19 $TbeSoupe = array_merge($Polévky, $Polévky2); <br>20 $HowMany3 = počet ($TheSoups) ; <br>21 tisk („Pole $TheSoups obsahuje prvky .$HowMany3. <P>\n"); <br> 22 ?> "<br> 23 </BODY><br> 24 </HTML> </p><p>Při přímém přidávání prvků do pole buďte opatrní. To se provede správně takto: $Ar ray = "Add This"; iyai$Aggau = "Přidat toto";, ale je to správně takto: $Aggau = "Přidat toto";. Pokud zapomenete vložit závorky, přidaná hodnota zničí stávající pole a změní ho na jednoduchý řetězec nebo číslo.</p> <p>PHP 4.0 má několik nových funkcí pro práci s poli. Ne o všech se v knize mluví. Úplné informace o tomto tématu jsou však obsaženy v manuálu jazyka PHP, který lze nalézt na webových stránkách PHP. Dávejte pozor, abyste nepoužívali nové funkce jedinečné pro PHP 4.0, pokud váš server běží na PHP 3.x.</p> <p>V PHP existuje mnoho funkcí a operátorů pro převod polí: Soubor funkcí pro práci s poli</p><p>Existuje několik způsobů, jak přidat pole do pole pomocí PHP a všechny mohou být v určitých případech užitečné.</p><h2>"Operátor +"</h2><p>Toto je jednoduchý, ale záludný způsob:</p><p>$c = $a + $b</p><p><b>Tímto způsobem jsou přidány pouze ty klíče, které ještě nejsou v poli $a. V tomto případě jsou prvky připojeny na konec pole.</b></p><p>To znamená, že pokud klíč z pole $b není přítomen v poli $a, pak bude prvek s tímto klíčem přidán do výsledného pole. <br>Pokud pole $a již obsahuje prvek s takovým klíčem, pak jeho hodnota zůstane nezměněna.</p><p><b>Jinými slovy, změna místa výrazů změní součet: $a + $b != $b + $a - to stojí za zapamatování.</b></p><p>Nyní je zde podrobnější příklad, který to ilustruje:</p><p>$arr1 = ["a" => 1, "b" => 2]; $arr2 = ["b" => 3, "c" => 4]; var_export($arr1 + $arr2); //pole (// "a" => 1, // "b" => 2, // "c" => 4, //) var_export($arr2 + $arr1); //pole (// "b" => 3, // "c" => 4, // "a" => 1, //)</p><h2>funkce array_merge().</h2><p>Tuto funkci můžete použít následovně:</p><p>$result = array_merge($arr1, $arr2)</p><p>Vynuluje číselné indexy a nahradí řetězcové. Skvělé pro zřetězení dvou nebo více polí s číselnými indexy:</p><blockquote><p>Pokud mají vstupní pole stejné řetězcové klíče, pak každá následující hodnota nahradí tu předchozí. Pokud však pole mají stejné číselné klíče, hodnota uvedená jako poslední nenahradí původní hodnotu, ale bude přidána na konec pole.</p> </blockquote><h2>funkce array_merge_recursive</h2><p>Dělá to samé jako array_merge, kromě toho, že rekurzivně prochází každou větví pole a dělá to samé s dětmi.</p><h2>funkce array_replace().</h2><p>Nahradí prvky pole prvky jiných předávaných polí.</p><h2>funkce array_replace_recursive().</h2><p>Stejné jako array_replace, ale zpracovává všechny větve pole.</p> <p>Podívejme se na způsoby zápisu hodnot do pole. Existující pole lze upravit explicitním nastavením hodnot v něm. To se provádí přiřazením hodnot k poli.</p> <p>Operace přiřazení hodnoty prvku pole je stejná jako operace přiřazení hodnoty proměnné, s výjimkou hranatých závorek (), které jsou přidány za název proměnné pole. Index/klíč prvku je uveden v hranatých závorkách. Pokud není zadán žádný index/klíč, PHP automaticky vybere nejmenší neobsazený číselný index.</p><p> <?php $my_arr = array(0 =>"nula", 1 => "jedna"); $my_arr = "dva"; $my_arr = "tři"; var_dump($my_arr); // přiřazení bez uvedení indexu/klíče $my_arr = "čtyři"; $my_arr = "pět"; echo" <br>"; var_dump($my_arr); ?></p><p>Chcete-li změnit konkrétní hodnotu, jednoduše přiřadíte novou hodnotu existujícímu prvku. Chcete-li odstranit jakýkoli prvek pole s jeho indexem/klíčem nebo úplně odstranit samotné pole, použijte funkci unset():</p><p> <?php $my_arr = array(10, 15, 20); $my_arr = "радуга"; // изменяем значение первого элемента unset($my_arr); // Удаляем полностью второй элемент (ключ/значение) из массива var_dump($my_arr); unset($my_arr); // Полностью удаляем массив?> </p><p>Poznámka: Jak bylo uvedeno výše, pokud je prvek přidán do pole bez určení klíče, PHP automaticky použije předchozí největší celočíselnou hodnotu klíče zvýšenou o 1. Pokud v poli ještě nejsou žádné celočíselné indexy, pak bude klíč 0 (nula).</p> <p>Všimněte si, že největší celočíselná hodnota klíče <b>nemusí v daném okamžiku nutně existovat v poli</b>, může to být způsobeno odstraněním prvků pole. Po odstranění prvků není pole přeindexováno. Vezměme si následující příklad, aby to bylo jasnější:</p><p> <?php // Создаем простой массив с числовыми индексами. $my_arr = array(1, 2, 3); print_r($my_arr); // Теперь удаляем все элементы, но сам массив оставляем нетронутым: unset($my_arr); unset($my_arr); unset($my_arr); echo "<br>"; print_r($my_arr); // Přidejte prvek (všimněte si, že nový klíč bude 3 místo 0). $my_arr = 6; echo " <br>"; print_r($my_arr); // Proveďte reindexaci: $my_arr = array_values($my_arr); $my_arr = 7; echo " <br>"; print_r($my_arr); ?></p><p>V tomto příkladu byly použity dvě nové funkce, print_r() a array_values(). Funkce array_values() vrací indexované pole (přeindexuje vrácené pole pomocí číselných indexů) a funkce print_r funguje jako var_dump, ale zobrazuje pole ve srozumitelnější podobě.</p> <p>Nyní se můžeme podívat na třetí způsob, jak vytvořit pole:</p><p> <?php // следующая запись создает массив $weekdays = "Понедельник"; $weekdays = "Вторник"; // тоже самое, но с указанием индекса $weekdays = "Понедельник"; $weekdays = "Вторник"; ?> </p><p>Příklad ukázal třetí způsob, jak vytvořit pole. Pokud pole $weekdays ještě nebylo vytvořeno, bude vytvořeno. Tento typ vytváření pole se však nedoporučuje, protože pokud již byla vytvořena proměnná $weekdays a obsahuje hodnotu, může to způsobit neočekávané výsledky skriptu.</p> <p>Pokud si nejste jisti, zda je proměnná polem, použijte funkci is_array. Kontrolu lze provést například takto:</p><p> <?php $yes = array("это", "массив"); echo is_array($yes) ? "Массив" : "Не массив"; echo "<br>"; $no = "běžný řetězec"; echo is_array($no) ? "Pole" : "Není pole"; ?></p> <p><b>pole_pad</b></p><p>Přidá několik prvků do pole. <br>Syntax:</p><p>Array array_pad (vstup pole, int pad_size, smíšená hodnota pad_value)</p><p>Funkce array_pad() vrací kopii vstupního pole, do kterého byly přidány prvky s pad_values, takže počet prvků ve výsledném poli je pad_size. <br>Pokud pad_size>0, pak budou prvky přidány na konec pole a if<0 - то в начало. <br>Pokud je hodnota pad_size menší než prvky v původním vstupním poli, nedojde k žádnému sčítání a funkce vrátí původní vstupní pole. <br>Příklad použití funkce array_pad():</p><p>$arr = pole(12, 10, 4); <br>$vysledek = array_pad($arr, 5, 0); <br>// $vysledek = pole(12, 10, 4, 0, 0); <br>$vysledek = array_pad($arr, -7, -1); <br>// $vysledek = pole(-1, -1, -1, -1, 12, 10, 4) <br>$result = array_pad($arr, 2, "noop"); <br>// nepřidá</p><p><b>pole_map</b></p><p>Použijte vlastní funkci na všechny prvky zadaných polí. <br>Syntax:</p><p>Array array_map(smíšené zpětné volání, pole arr1 [, pole ...])</p><p>Funkce array_map() vrací pole, které obsahuje prvky všech zadaných polí po zpracování funkcí zpětného volání uživatele. <br>Počet parametrů předávaných do uživatelsky definované funkce se musí shodovat s počtem polí předávaných do array_map().</p><p>Příklad použití funkce array_map(): Zpracování jednoho pole</p><p> <?phpfunction cube($n) {<br>návrat $n*$n*$n; <br>} <br>$a = pole(1, 2, 3, 4, 5); <br>$b = array_map("kostka", $a); <br>print_r($b); <br>?> </p><p>Pole( <br> => 1<br> => 8<br> => 27<br> => 64<br> => 125<br>) </p><p>Příklad použití funkce array_map(): Zpracování více polí</p><p> <?phpfunction show_Spanish($n, $m) {<br>return "Číslo $n ve španělštině je $m"; <br>} <br>function map_Spanish($n, $m) ( <br>návratové pole ($n => $m); <br>}</p><p>$a = pole(1, 2, 3, 4, 5); <br>$b = array("uno", "dos", "tres", "cuatro", "cinco"); <br>$c = array_map("show_Spanish", $a, $b); <br>print_r($c);</p><p>$d = array_map("map_Spanish", $a , $b); <br>print_r($d); <br>?> </p><p>Uvedený příklad vypíše následující:</p><p>// tisk $cArray( <br>=> Číslo 1 ve španělštině - uno <br>=> Číslo 2 ve španělštině - dos <br>=> Číslo 3 ve španělštině - tres <br>=> Číslo 4 ve španělštině - cuatro <br>=> Číslo 5 ve španělštině - cinco <br>)</p><p>// tisk $dArray( <br>=> Pole <br>=> ne <br>)</p><p>=> Pole <br>=> dos <br>)</p><p>=> Pole <br>=> tres <br>)</p><p>=> Pole <br>=> cuatro <br>)</p><p>=> Pole <br>=> cinco <br>)</p><p>Funkce array_map() se obvykle používá na polích, která mají stejnou velikost. Pokud mají pole různé délky, pak jsou ta menší doplněna prvky s prázdnými hodnotami. <br>Je třeba poznamenat, že pokud zadáte null místo názvu funkce zpracování, vytvoří se pole polí. <br>Příklad použití funkce array_map(): Vytvoření pole polí</p><p> <?php$a = array(1, 2, 3, 4, 5);<br>$b = array("jeden", "dva", "tři", "čtyři", "pět"); <br>$c = array("uno", "dos", "tres", "cuatro", "cinco"); <br>$d = array_map(null, $a, $b, $c); <br>print_r($d); <br>?> </p><p>Uvedený příklad vypíše následující:</p><p>Pole( <br>=> Pole <br> => 1<br>=> jeden <br>=> ne <br>)</p><p>=> Pole <br> => 2<br>=> dva <br>=> dos <br>)</p><p>=> Pole <br> => 3<br>=> tři <br>=> tres <br>)</p><p>=> Pole <br> => 4<br>=> čtyři <br>=> cuatro <br>)</p><p>=> Pole <br> => 5<br>=> pět <br>=> cinco <br>)</p><p>Funkce podporovaná PHP 4 >= 4.0.6, PHP 5</p><p><b>pole_pop</b></p><p>Načte a odstraní poslední prvky pole. <br>Syntax:</p><p>Mixed array_pop(array arr);</p><p>Funkce array_pop() vyjme poslední prvek z pole arr a vrátí jej a poté jej odstraní. Pomocí této funkce můžeme budovat struktury podobné zásobníkům. Pokud bylo pole arr prázdné nebo se nejedná o pole, funkce vrátí prázdný řetězec NULL.</p><p>Po použití funkce array_pop() se kurzor pole nastaví na začátek. <br>Příklad použití funkce array_pop():</p><p> <?php$stack = array("orange", "apple", "raspberry");<br>$ovoce = array_pop($stack); <br>print_r($stack); <br>print_r($ovoce); <br>?> </p><p>Příklad vypíše následující:</p><p>Pole( <br>=> oranžová <br>=> banán <br>=> jablko <br>) </p><p>Funkce podporovaná PHP 4, PHP 5</p><p><b>array_push</b></p><p>Přidá jeden nebo více prvků na konec pole. <br>Syntax:</p><p>Int array_push(array arr, mixed var1 [, mixed var2, ..])</p><p>Funkce array_push() přidá prvky var1, var2 atd. do pole arr. Přiřazuje jim číselné indexy - přesně jako u standardních . <br>Pokud potřebujete přidat pouze jeden prvek, může být jednodušší použít tento operátor:</p><p>Array_push($Arr,1000); // volání funkce $Arr=100; // to samé, ale kratší</p><p>Příklad použití funkce array_push():</p><p> <?php$stack = array("orange", "banana");<br>array_push($stack, "jablko", "malina"); <br>print_r($stack); <br>?> </p><p>Příklad vypíše následující:</p><p>Pole( <br>=> oranžová <br>=> banán <br>=> jablko <br>=> malina <br>) </p><p>Pamatujte, že funkce array_push() zachází s polem jako se zásobníkem a vždy přidává prvky na konec. <br>Funkce podporovaná PHP 4, PHP 5</p><p><b>array_shift</b></p><p>Načte a odstraní první prvek pole. <br>Syntax:</p><p>Mixed array_shift(array arr)</p><p>Funkce array_shift() vezme první prvek pole arr a vrátí jej. Je velmi podobný array_pop(), <br>ale přijímá pouze počáteční, nikoli konečný prvek, a také vytváří poměrně silný „otřes“ celého pole: koneckonců při extrahování prvního prvku musíte upravit všechny číselné indexy všech zbývajících prvků, protože všechny následující prvky pole se posunou o jednu pozici dopředu. Klíče pole řetězců se nemění. <br>Pokud je arr prázdné nebo není pole, funkce vrátí hodnotu NULL.</p><p>Po použití této funkce se ukazatel pole přesune na začátek. <br>Příklad použití funkce array_shift():</p><p> <?php$stack = array("orange", "banana", "apple", "raspberry");<br>$ovoce = array_shift($stack); <br>print_r($stack); <br>?> </p><p>Tento příklad vypíše následující:</p><p>Pole( <br>=> banán <br>=> jablko <br>=> malina <br>) </p><p>a proměnná $ovoce bude mít hodnotu "oranžová"</p><p>Funkce podporovaná PHP 4, PHP 5</p><p><b>array_unshift</b></p><p>Přidá jednu nebo více hodnot na začátek pole. <br>Syntax:</p><p>Int array_unshift(list arr, mixed var1 [,mixed var2, ...])</p><p>Funkce array_unshift() přidá předané hodnoty var na začátek pole arr. Pořadí nových prvků v poli je zachováno. Všechny digitální indexy pole se změní tak, aby začínalo od nuly. Všechny řetězcové indexy pole jsou nezměněny. <br>Funkce vrátí nový počet prvků v poli. <br>Příklad použití funkce array_unshift():</p><p> <?php$queue = array("orange", "banana");<br>array_unshift($fronta, "jablko", "malina"); <br>?> </p><p>Nyní bude mít proměnná $queue následující prvky:</p><p>Pole( <br>=> jablko <br>=> malina <br>=> oranžová <br>=> banán <br>) </p><p>Funkce podporovaná PHP 4, PHP 5</p><p><b>pole_unikátní</b></p><p>Odstraní duplicitní hodnoty v poli. <br>Syntax:</p><p>Array pole_unique(pole pole)</p><p>Funkce array_unique() vrací pole složené ze všech jedinečných hodnot v poli arr spolu s jejich klíči odstraněním všech duplicitních hodnot. První nalezené dvojice klíč=>hodnota se umístí do výsledného pole. Indexy jsou zachovány. <br>Příklad použití funkce array_unique():</p><p> <?php$input = array("a" =>"zelená", "červená", "b" => <br>"zelená", "modrá", "červená"); <br><br>print_r($vysledek); <br>?> </p><p>Příklad vypíše následující:</p><p>Pole( <br>[a] => zelená <br>=> červená <br>=> modrá <br>) </p><p>Příklad použití funkce array_unique(): Porovnání datových typů</p><p> <?php$input = array(4, "4", "3", 4, 3, "3");<br>$vysledek = pole_unique($vstup); <br>var_dump($vysledek); <br>?> </p><p>Příklad vypíše následující:</p><p>Pole(2) ( <br>=> int(4) <br>=> řetězec(1) "3" <br>} </p><p>Funkce podporovaná PHP 4 >= 4.0.1, PHP 5</p><p><b>pole_chunk</b></p><p>Funkce rozdělí pole na části. <br>Syntax:</p><p>Array array_chunk(array arr, int size [, bool zachování_klíčů])</p><p>Funkce array_chunk() rozdělí původní pole arr do několika polí, jejichž délka je určena velikostí čísla. Pokud rozměr původního pole není dělitelný přesně velikostí částí, bude mít výsledné pole menší rozměr. <br>Funkce array_chunk() vrací vícerozměrné pole, jehož indexy začínají od 0 do počtu výsledných polí a hodnoty jsou pole získaná jako výsledek rozdělení. <br>Nepovinný parametr zachování_klíčů určuje, zda mají být klíče původního pole zachovány či nikoli. Pokud je tento parametr false (výchozí hodnota), pak budou indexy výsledných polí specifikovány čísly začínajícími od nuly. Pokud je parametr pravdivý, pak jsou klíče původního pole zachovány. <br>Příklad použití funkce array_chunk():</p><p>$array = array("1st element", <br>"2. prvek" <br>"3. prvek" <br>"4. prvek" <br>"pátý prvek"); <br>print_r(pole_chunk($pole, 2)); <br>print_r(pole_chunk($pole, 2, PRAVDA));</p><p>Příklad vypíše následující:</p><p>Pole( <br>=> Pole <br>=> 1. prvek <br>=> 2. prvek <br>)</p><p>=> Pole <br>=> 3. prvek <br>=> 4. prvek <br>)</p><p>=> Pole <br>=> 5. prvek <br>)</p><p>)<br>Pole( <br>=> Pole <br>=> 1. prvek <br>=> 2. prvek <br>)</p><p>=> Pole <br>=> 3. prvek <br>=> 4. prvek <br>)</p><p>=> Pole <br>=> 5. prvek <br>)</p><p>Funkce podporovaná PHP 4 >= 4.2.0, PHP 5</p><p><b>pole_výplň</b></p><p>Funkce vyplní pole konkrétními hodnotami. <br>Syntax:</p><p>Array array_fill(int start_index, int num, smíšená hodnota)</p><p>Funkce array_fill() vrací pole obsahující hodnoty zadané v parametru value o velikosti num, počínaje prvkem zadaným v parametru start_index. <br>Příklad použití array_diff_uassoc():</p><p> <?php$a = array_fill(5, 6, "banana"); <br>print_r($a); <br>?> </p><p>Příklad vypíše následující:</p><p>Pole( <br>=> banán <br>=> banán <br>=> banán <br>=> banán <br>=> banán <br>=> banán <br>) </p><p>Funkce podporovaná PHP 4 >= 4.2.0, PHP 5</p><p><b>pole_filtr</b></p><p>Funkce aplikuje filtr na pole pomocí vlastní funkce. <br>Syntax:</p><p>Array array_filter(vstup pole [, zpětné volání])</p><p>Funkce array_filter() vrací pole, které obsahuje hodnoty přítomné ve vstupním poli, filtrované podle výsledků uživatelem definované funkce zpětného volání. <br>Pokud je vstupní pole asociativní pole, indexy jsou ve výsledném poli zachovány. <br>Příklad použití funkce array_filter():</p><p> <?phpfunction odd($var) {<br>return ($var % 2 == 1); <br>}</p><p>funkce sudá($var) ( <br>return ($var % 2 == 0); <br>}</p><p>$array1 = array("a"=>1, "b"=>2, "c"=>3, "d"=>4, "e"=>5); <br>$pole2 = pole(6, 7, 8, 9, 10, 11, 12); <br>echo "Odd:n"; <br>print_r(pole_filter($pole1, "liché")); <br>echo "Even:n"; <br>t_r(pole_filter($pole2, "sudé")); <br>?> </p><p>Příklad vypíše následující:</p><p>Odd:Array( <br>[a] => 1 <br>[c] => 3 <br>[e] => 5 <br>Even:Array( <br> => 6<br> => 8<br> => 10<br> => 12<br>) </p><p>Stojí za zmínku, že místo názvu funkce filtrování můžete zadat pole, které obsahuje odkaz na objekt a název metody. <br>Za zmínku také stojí, že při zpracování pole pomocí funkce array_filter() jej nelze změnit: přidat, odebrat prvky nebo resetovat pole, protože to může vést k nesprávnému fungování funkce. <br>Funkce podporovaná PHP 4 >= 4.0.6, PHP 5</p> <script type="text/javascript"> <!-- var _acic={dataProvider:10};(function(){var e=document.createElement("script");e.type="text/javascript";e.async=true;e.src="https://www.acint.net/aci.js";var t=document.getElementsByTagName("script")[0];t.parentNode.insertBefore(e,t)})() //--> </script><br> <br> <script>document.write("<img style='display:none;' src='//counter.yadro.ru/hit;artfast_after?t44.1;r"+ escape(document.referrer)+((typeof(screen)=="undefined")?"": ";s"+screen.width+"*"+screen.height+"*"+(screen.colorDepth? screen.colorDepth:screen.pixelDepth))+";u"+escape(document.URL)+";h"+escape(document.title.substring(0,150))+ ";"+Math.random()+ "border='0' width='1' height='1' loading=lazy loading=lazy>");</script> </div> </article> <div class="related_block"> <div class="title">Související publikace</div> <ul class="recent_ul"> <li> <div class="img_block"> <div class="overlay"></div> <img src="/uploads/db6ca8be8505d7849196b41a0b14d818.jpg" style="width:230px; height:145px;" / loading=lazy loading=lazy></div> <a href="https://storerarity.ru/cs/test-i-obzor-smartfona-motorola-moto-g6-plus-gigant-g6-serii-motorola-moto-g--.html">Motorola Moto G – Specifikace Motorola Moto G5 Plus Specifikace a výsledky testů</a></li> <li> <div class="img_block"> <div class="overlay"></div> <img src="/uploads/34ae1de6dc558eb702e7fae80b9fe9c2.jpg" style="width:230px; height:145px;" / loading=lazy loading=lazy></div> <a href="https://storerarity.ru/cs/interfeis-i-navigaciya-funkcionalnye-vozmozhnosti.html">Funkčnost</a></li> <li> <div class="img_block"> <div class="overlay"></div> <img src="/uploads/abcfb3f71140ad06551350ad316a8fdc.jpg" style="width:230px; height:145px;" / loading=lazy loading=lazy></div> <a href="https://storerarity.ru/cs/izmenit-imya-uchetki-v-skaipe-kak-smenit-login-v-skype-kak-udalit.html">Jak změnit přihlašovací jméno Skype</a></li> </ul> </div> </div> <aside id="sidebar"> <div class="block"> <nav class="sidebar_menu"> <div class="menu-sidebar_menu-container"> <ul id="menu-sidebar_menu" class="menu"> <li id="menu-item-" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-"><a href="https://storerarity.ru/cs/category/programs/">Programy</a></li> <li id="menu-item-" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-"><a href="https://storerarity.ru/cs/category/windows/">Okna</a></li> <li id="menu-item-" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-"><a href="https://storerarity.ru/cs/category/devices/">Zařízení</a></li> <li id="menu-item-" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-"><a href="https://storerarity.ru/cs/category/browsers/">Prohlížeče</a></li> <li id="menu-item-" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-"><a href="https://storerarity.ru/cs/category/reviews/">Recenze</a></li> <li id="menu-item-" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-"><a href="https://storerarity.ru/cs/category/reviews/">Recenze</a></li> <li id="menu-item-" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-"><a href="https://storerarity.ru/cs/category/setup/">Nastavení</a></li> <li id="menu-item-" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-"><a href="https://storerarity.ru/cs/category/torrent/">Torrent</a></li> <li id="menu-item-" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-"><a href="https://storerarity.ru/cs/category/editors/">redaktoři</a></li> <li id="menu-item-" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-"><a href="https://storerarity.ru/cs/category/instagram/">Instagram</a></li> </ul> </div> </nav> </div> <div class="block recent_block"> <div class="title">Poslední poznámky</div> <ul class="popular"> <li> <div class="img_block"> <div class="overlay"></div> <img width="240" height="145" src="/uploads/c57c2fcd03116e21d413bf0b21d5c91f.jpg" class="attachment-popular_thumb size-popular_thumb wp-post-image" alt="Organizace směny se základnou pobočky (maloobchodní prodejna) v obchodní síti prostřednictvím XML (univerzální burza)" / loading=lazy loading=lazy> <span class="cat">Recenze</span></div> <a href="https://storerarity.ru/cs/1s-kak-sdelat-obmen-dannymi-organizaciya-obmena-s-bazoi-filiala.html">Organizace směny se základnou pobočky (maloobchodní prodejna) v obchodní síti prostřednictvím XML (univerzální burza)</a></li> <li> <div class="img_block"> <div class="overlay"></div> <img width="240" height="145" src="/uploads/15bc70b99a6682c01208b569e7cdb695.jpg" class="attachment-popular_thumb size-popular_thumb wp-post-image" alt="Jak odstranit číslování z jednotlivých stránek ve Wordu" / loading=lazy loading=lazy> <span class="cat">Recenze</span></div> <a href="https://storerarity.ru/cs/kak-ubrat-numeraciyu-stranic-s-titulnogo-lista-kak-ubrat-numeraciyu-s.html">Jak odstranit číslování z jednotlivých stránek ve Wordu</a></li> <li> <div class="img_block"> <div class="overlay"></div> <img width="240" height="145" src="/uploads/94b4df2eca2f27fc290c84bc05785c19.jpg" class="attachment-popular_thumb size-popular_thumb wp-post-image" alt="Recenze síťové společnosti NL International: produkty, marketingový plán, recenze" / loading=lazy loading=lazy> <span class="cat">Recenze</span></div> <a href="https://storerarity.ru/cs/vhod-v-lichnyi-ofis-nl-obzor-setevoi-kompanii-nl-international-produkty.html">Recenze síťové společnosti NL International: produkty, marketingový plán, recenze</a></li> </ul> </div> </aside> </div> </div> <div class="clear"></div> <footer id="footer"><div class="wrapper"> <div class="copy">2024 | Počítače pro každého – nastavení, instalace, obnova</div> <nav class="header_menu"> <div class="menu-footer_menu-container"> </div> </nav> </div></footer> <div id="toTop"></div> <script type='text/javascript' src='https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js'></script> <nav class="mobile_menu"> <div class="close_menu"></div> <div class="mob_menu"> <div class="menu-mobile_menu-container"> <ul id="menu-mobile_menu" class="menu"> <li id="menu-item-" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-"><a href="https://storerarity.ru/cs/category/programs/">Programy</a></li> <li id="menu-item-" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-"><a href="https://storerarity.ru/cs/category/windows/">Okna</a></li> <li id="menu-item-" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-"><a href="https://storerarity.ru/cs/category/devices/">Zařízení</a></li> <li id="menu-item-" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-"><a href="https://storerarity.ru/cs/category/browsers/">Prohlížeče</a></li> <li id="menu-item-" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-"><a href="https://storerarity.ru/cs/category/reviews/">Recenze</a></li> <li id="menu-item-" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-"><a href="https://storerarity.ru/cs/category/reviews/">Recenze</a></li> <li id="menu-item-" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-"><a href="https://storerarity.ru/cs/category/setup/">Nastavení</a></li> <li id="menu-item-" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-"><a href="https://storerarity.ru/cs/category/torrent/">Torrent</a></li> </ul> </div> </div> </nav> <script type="text/javascript"> <!-- var _acic={dataProvider:10};(function(){var e=document.createElement("script");e.type="text/javascript";e.async=true;e.src="https://www.acint.net/aci.js";var t=document.getElementsByTagName("script")[0];t.parentNode.insertBefore(e,t)})() //--> </script><br> <br> </body> </html> <script data-cfasync="false" src="/cdn-cgi/scripts/5c5dd728/cloudflare-static/email-decode.min.js"></script>