Autor Zpráva
Starman
Profil *
Zdar, mám pole
$cisla = array(42, 56, 85, 245);

Potřebuju z toho pole vymazat třeba číslo 85, existuje na to funkce? Myslím něco jako
$cisla = delete_in_array($cisla, "85");
Alphard
Profil
unset(), ale musíte znát klíč hodnoty, kterou chcete smazat.
Majkl578
Profil
$cisla = array(42, 56, 85, 245);

if (($key = array_search(85, $cisla)) !== false) {
	unset($cisla[$key]);
}

var_dump($cisla);
mylan
Profil
Funkcia neexistuje, ale môžeš si ju napísať, napríklad:
function delete_in_array() {
  $args = func_get_args();
  return array_diff($args[0], array_slice($args, 1));
}

Použitie bude presne tak ako si napísal:
$cisla = delete_in_array($cisla, '85');

Môžeš vymazať aj viac hodnôt naraz:
$cisla = delete_in_array($cisla, '85', '56', '245'); // v poli ostane len 42
Kcko
Profil
mylan:
Hezke pouziti techto array funkci.
Starman
Profil *
Díky pánové. Ještě bych se chtěl zeptat, je a kde je možné nahlásit návrh nové funkce do připravovaného PHP 6? Tahle funkce v jednodušším zápisu by neměla chybět, váš názor?
Majkl578
Profil
[#6] Starman
Pomocí PHP Bugs trackeru (Bug type - Feature/Change request).
Šance je dle mého velmi mizivá, vývoj PHP je dost divný, ani vážná chyba ve scripting engine se nedostane do následující stable větve, což mi přijde poměrně smutné.
Starman
Profil *
Majkl578:
Díky za informace.

Vaše odpověď

Mohlo by se hodit

Odkud se sem odkazuje


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0