Dette er noget udklip fra noget kode jeg har som laver livesearch i en XML fil med noget tekst i....
$q = søgestring
$a=$x->item($i)->getElementsByTagName('des');
if (stristr($a->item(0)->childNodes->item(0)->nodeValue,$q))
Det virker fint men problemet er at hvis min tekst er:
"Dette er en blomst lavet af gummi" og man så søger på "gummi blomst" så finder den ikke noget, fordi at de ikke står sammenhængende i min tekst....
Hvordan kan jeg forbedre stristr($a->item(0)->childNodes->item(0)->nodeValue,$q så den kan finde fx. 3 ord selv om det ikke står sammenhængende i teksten ?
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Ja, præcis som coderdk siger. Du kan så lægge dem ind i et associativt array (fx $resultater som der også bliver nævnt), hvor du så lægger én til elements værdi, hver gang du finder en match. Til sidst vil du derefter kunne sortere dit array baseret på værdien, så de resultater med flest matchende ord vil komme først.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.