Autor Zpráva
PHP_Nemaster
Profil
Dobrý den,
řeším pravděpodobně jednoduchý problém, ale pořád nemůžu přijít na to, jak ho vyřešit.

Mám funkci pro práci s polem, která jako argument přijímá index určité položky v poli. Položku chci zobrazit, pouze pokud položka s daným indexem existuje. Ale pořád nemůžu přijít na to jak, už jsem vyzkoušel spoustu způsobů a ani jeden nefungoval.

    public function view( $arrelem ) {

        $count = count( $this->array );

        if (  ($count - 1) == $arrelem  ) {

            echo $this->array[$arrelem];

            } else {

            echo "Wrong offset";

            }
        }

A ted' příklad použití:

Vytvořím pole se třemi položkami. Nejvyšší index je 2.

    $arr = new Arr();
    $arr->add("Paris");
    $arr->add("London");
    $arr->add("Moscow");

A pak dám zobrazit nějakou položku, třeba tu s indexem 2.
$arr->view(2);

$count = 3
$count - 1 = 2
$arrelem = 2
$arrelem = $count, podmínka splněna

Ale pokud dám zobrazit třeba položku s indexem 1, count - 1 bude 2 a arrelem 1, takže nic kromě zobrazení položky s indexem 2 nefunguje.
Je potřeba měnit číslo, které odečítám od count. Ale já bych to chtěl udělat dynamicky, aby to fungovalo u každé hodnoty.

Nevíte jak na to?

Předem děkuji za odpověd'
Keeehi
Profil
Na testování, zda je nějaký klíč v poli obsažen slouží funkce array_key_exists().

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

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

0