Ahoj, v poli mam ulozene napriklad tyto hodnoty:
$pole[0]=21
$pole[1]=5
$pole[2]=9
$pole[3]=8
$pole[4]=11
Z $_GET zídkám například 8 a potrebuji nasstavit ukazatel pole na tu hodnotu
8, abych pote mohl pouzit prev($pole) a next($pole) Jak to udelat? Predem dekuji za vase odpovedi.
Fórum › PHP
Ukazatel pole
![](img/forum_vlakno_help_vyreseno.png)
Nie som si istý, či som to správne pochopil, ale ak áno, potom:
current prvok v poli nemôžeš nastavovať priamo. Vieš spraviť iba reset, čím sa dostaneš na začiatok a potom sa pomocou prev/next posúvaš. Takže prvé čo spravíš je reset($pole) a potom sa opakovane posúvaš po prvokch až kým nenájdeš ten ktorý chceš a vtedy sa prestaneš posúvať - pole ostane nastavené na tom mieste. Tiež je potrebné zisťovať či už niesi na konci poľa pre prípad, že by tam ten prvok nebol...
reset($pole);
while(
current($pole)!==$_GET['current'] && next($pole)!==false
) ;
alebo ak sa ti viac pači for..for (
reset($pole);
current($pole)!==false && current($pole)!==$_GET['current'];
next($pole)
) ;
po vykonani niektoreho z tychto kódov máš pole nastavené na pozícii prvku v $_GET['current'], alebo - ked tam ten prvok nie je tak na konci pola.
Ja však dosť nerozumiem, na čo je to dobré, keďže existuje množstvo jednoduchších spôsobov pre prístup k prvkom... Takže ak popíšeš kde to potrebuješ, skúsime nájsť jednoduchšie riešenie...
Mam fotogalerii apotrebuju prepinat dalsi nebo predchozi fotku. Jiank moc dekuji.
No mam tento kod:
reset($fotky);
while(current($fotky)!==$_GET["id"] && next($fotky)!==false);
<div id="last"><a href="<?php echo "fotky.php?id=".prev($fotky)."&idkat=".$_GET["idkat"]; ?>"><img src="last.png" /></a></div>
<div id="next"><a href="<?php echo "fotky.php?id=".next($fotky)."&idkat=".$_GET["idkat"]; ?>"><img src="next.png" /></a></div>
a problem je v tom ze se mi ukazatel posune nejdrive o jedno dozadu a potom o jedno dopredu, takze dopredu nefunguje a zustava na stejnem miste. Jak udelat next 2x?
<div id="next"><a href="<?php next($fotky); echo "fotky.php?id=".next($fotky)."&i...
Stale nerozumiem prečo to robíš tak krkolomne, nebolo by jednoduchšie predávať getom miesto hodnoty rovno index poľa?
btw oposit od next != last, ale previous, last je niečo iné...
To Figa : jak jde menit jen index pole?
budes mit treba:
$pole = array( 'neco.jpg','dalsi.jpg','treti.jpg','posledni.jpg' );
tak posles scriptu ze chces prvni:
neco?obr=1
a vevnitr jen echo $pole[$_GET['obr']]; // to vypise jen nazev... jinak <img ...>
no a predchudce mas $_GET['obr']-1, nasledovnika $_GET['obr']+1 samo lze jeste kontrolovat jestli takovej index v poli vubec je
pak osetrit ten GET aby tam neslo zadat nic krom cisla a pripadne nahradit za 1
array_search()
ne :) ale je to jedna z cest. nekdy je lepsi porovnavat klice nez hodnoty. :)
![](img/forum_nove_psp_new.png)
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
![](/img/smile/1.gif)
![](/img/smile/2.gif)
![](/img/smile/3.gif)
![](/img/smile/4.gif)
![](/img/smile/5.gif)
![](/img/smile/6.gif)
![](/img/smile/7.gif)
![](/img/smile/8.gif)
![](/img/smile/9.gif)
![](/img/smile/10.gif)
![](/img/smile/11.gif)
![](/img/smile/12.gif)
![](/img/smile/13.gif)
![](/img/smile/14.gif)
![](/img/smile/15.gif)
![](/img/smile/16.gif)
![](/img/smile/17.gif)
![](/img/smile/18.gif)
![](/img/smile/19.gif)
![](/img/smile/20.gif)
![](/img/smile/21.gif)
![](/img/smile/22.gif)
![](/img/smile/23.gif)
![](/img/smile/24.gif)
![](/img/smile/25.gif)
![](/img/smile/26.gif)
![](/img/smile/27.gif)
![](/img/smile/28.gif)
![](/img/smile/29.gif)
![](/img/smile/30.gif)
![](/img/smile/31.gif)
![](/img/smile/32.gif)
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Ukazatel na pole struktur — založil gogulux
Ukazatel na viacrozmerne pole — založil Dodo
Jak vypsat ukazatel na pole do labelu — založil Didika
Jak získat ukazatel na pole umístěné v paměti programu — založil hlucheucho
Moderátoři diskuze