Autor Zpráva
josh
Profil *
Ahoj,

titulek je trochu krkolomný, jak to napsat lépe do pár slov..? O co jde.

Mám pole, které je různé, může obsahovat cokoliv. Počet prvků neznámý, zkrátka, moc o něm nevím. Potřeboval bych ho setřídit dle abecedy (fce sort), vyhledat v něm část řetězce a vybrat ten, co bude nejdříve v abecedě, tedy první.

Uvedu příklad pole:
$pole = array ('test', 'pokus', 'ghjk', 'pokusik', 'apokus', 'dsads');


Co potřebuji:
if ($pole obsahuje 'oku') echo "obsahuje $string";  //mělo by vypsat "obsahuje apokus", protože "apokus" je první v abecedě
  else echo "neobsahuje";



Děkuji, snad je to pochopitelné :-)
SpotRudloff
Profil
Přesně tohle obsahuje funkce in_array (http://cz.php.net/manual/en/function.in-array.php)!
josh
Profil *
SpotRudloff:
nikoliv, ta hledá dle celého výrazu, já potřebuji jen jeho část.
larryx
Profil
$pole = array ('test', 'pokus', 'ghjk', 'pokusik', 'apokus', 'dsads');
$novepole=array();
foreach($pole as $val){
   if(strpos($val,"oku")===false) continue;
       else $novepole[]=$val;
}

sort($novepole);

var_dump($novepole);
ak som spravne pochopil, moze tam byt chyba, pisane z mobilu.
Majkl578
Profil
$data = array('test', 'pokus', 'ghjk', 'pokusik', 'apokus', 'dsads');

natsort($data);

foreach ($data as $item) {
    if (strpos($item, 'oku') !== false) {
        echo "match: $item";
        break;
    }
}

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