Visualizzazione risultati 1 fino 3 di 3

Discussione: Aiuto su piccolo motore di ricerca per il mio sito

  1. #1
    L'avatar di sevenjeak
    sevenjeak non è connesso AlterGuru
    Data registrazione
    25-10-2007
    Residenza
    Roma
    Messaggi
    1,769

    Predefinito Aiuto su piccolo motore di ricerca per il mio sito

    Salve,

    Come da titolo, sto creando un piccolo motore di ricerca per il mio sito, fin'ora ho specificato che lo script dovrebbe cercare la parola richiesta sia in maiuscolo, in minuscolo e sia con la prima lettera maiuscola e tutte le altre minuscole, ora vi vorrei fare una domanda: E' possibile, tramite una if, far si che mi trovi la parola senza tener conto dei caratteri minuscoli o maiuscoli?

    Non so se mi sono spiegato bene.

    Sevenjeak
    Software developer and much more

  2. #2
    Guest

    Predefinito

    La mia soluzione sarebbe quella di fare questo:

    if (strpos(strtolower(haystack), strtolower(needle)) !== False) { ... }

    needle è l'ago, haystack è il pagliaio (simpatici quelli di php.net). Essenzialmente needle indica la chiave quindi cosa devi cercare, haystack dove lo devi cercare. Potresti scorrere una "serie di haystack" e controllare, usando ogni volta questa if, la presenza del "needle". (N.B.: !== non è un errore di battitura, è proprio così)

  3. #3
    L'avatar di sevenjeak
    sevenjeak non è connesso AlterGuru
    Data registrazione
    25-10-2007
    Residenza
    Roma
    Messaggi
    1,769

    Predefinito

    Premetto che ora non posso proprio provare lo script, lo proverò successivamente, cmq in precedenza avevo scritto questa if:

    Codice PHP:
    if (strstr($name, strtolower($key)) or strstr($name, strtoupper($key)) or strstr($name, ucfirst($key)))
    {
    ...
    }
    $name e la stringa dove trovare la sub-stringa $key.

    E' possibile utilizzare la funzione strstr(), al posto della strpos(), per fare quello che vorrei?

    EDIT:

    Funziona, inserendo la funzione strstr(), al posto della strpos() funziona lo stesso, scrivendo in questo modo:
    Codice PHP:
    if (strstr(strtolower($name), strtolower($key)))
    {
    ...
    }
    Grazie per l'aiuto.
    Ultima modifica di sevenjeak : 20-08-2010 alle ore 16.08.30

    Sevenjeak
    Software developer and much more

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •