Moikka!
Kun käytän strpos-funktiota ääkkösien kanssa ei tulostuu mitään.
Miten saan ääkköselliset sanat löytymään strpos:lla?
Keskustelussa laita hakuun alla olevilla sanoilla, niin löytyy kattava opastus ongelmaan.
PHP: strpos ja ö-kirjain
Pelkään, että minulla on vähän erilainen ongelma, koska kirjaimet näkyy oikein tai en sitten osannut käyttää edellä mainittua tarkistusta.
strpos löytää tekstistä yksittäisiä kirjaimia, myös sanoja, mutta jos sana sisältää ääkkösiä tulostukseksi tulee false eli ei löydä paikkaa, mistä ääkkösillinen sana alkaa.
Mitä neuvoksi?
Niin, siis sinun pitää käyttää funktiota mb_strpos
Jos tulee ongelmia, niin postaa myös koodi mitä tähän mennessä olet tehnyt.
Kuten tuolla mainitussa vanhassa keskustelussakin todettiin, niin jos molemmat (hakusana ja teksti) ovat samassa merkistössä, niin strpos pitäisi myös löytää kaikki ö:t sun muut.
strpos:in ongelma muissa kuin "tavu per merkki" tyylisissä koodauksissa ei ole se etteikö se löytäisi jotain vaan se, että se kertoo alkupaikan tavuina eikä kirjamina. Eli siis jos UTF8 -koodatusta "Öljyä" -tekstistä etsitään "yä" -merkkijonoa, niin sen pitäisi kyllä löytyä mutta löytymiskohdaksi ilmoitettaisiin 5. tavu kun etsijä saattaisi haluta tietää että 4. merkki.
Eli siis ensimmäinen homma on varmistaa että molemmat (tai kaikki) tekstit on samalla koodauksella ja sen jälkeen jos tarvitsee tietää monennestako merkistä löytyy niin käyttää mb_strpos -funktiota strpos asemesta. (Toki mb_strpos voi käyttää joka tapauksessa)
Myöskään mb_strpos ei löydä tekstejä jos etsittävä ja etsitty ovat eri merkistössä. Eli jos halutaan löytää "ö" merkkijonosta "Pöllö" tai halutaan löytää "ö" merkkijonosta "Pöllö"
Aihe on jo aika vanha, joten et voi enää vastata siihen.