Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2015
    Messaggi
    25

    funzione strpos(); e array

    premessa sono un novizio e quindi mi scuso in anticipo se scrivo qualche strafalcione...
    allora vorrei attraverso la funzione strpos(); verificare se all'interno di una stringa sono contenute delle parole, nello specifico le parole sarebbero:
    annullato,
    annullata,
    annullati,
    annullate,

    quindi ho creato una variabile $vaMark1 che contiene il valore acquisito da una form per il campo noteniz

    codice HTML:
    [PHP]$varMark1=$marker['noteiniz'];[/PHP]
    la mia idea era quella che creare un array che contenesse le parole da verificare es:
    Codice PHP:
    $checkann = array("annullato""annullata""annullate""annullati"); 
    e di inserire l'array come secondo argomento nella funzione strpos(); ovvero
    Codice PHP:
    $checkannullatostrpos($varMark1$checkann); 
    poi avrei fatto una if per verificare che il valore di strpos(); fosse diverso da false per applicare una classe css ad una parte di codice:
    Codice PHP:
    if($checkannullato !== false){
    classe css da applicare

    però ho visto che non funziona, c'è qualche buonanima che mi può dare qualche suggerimento ?
    grazie.

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    11,642
    La variabile $varMark1 contiene una parola oppure un testo composto da più parole?

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2015
    Messaggi
    25
    contiene più parole e potrebbe contenere o meno le parole dell'array.

  4. #4
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    11,642
    Visto che devi cercare tra
    annullatO
    annullatA
    annullatI
    annullatE

    io cercherei "annullat" in modo da usare solo una stringa per la ricerca e non un array, così con strpos() risolvi facilmente, quindi
    Codice PHP:
    if ( strpos($varMark1'annullat') !== false )
    {
        
    // classe css da applicare


  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2015
    Messaggi
    25
    caspita è vero.... grazie!
    giusto per curiosita' se avessi voluto usare l'arrray la sintassi corretta quale sarebbe stata...?
    grazie ancora Alhazred !

  6. #6
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    11,642
    Avresti dovuto impostare un ciclo foreach() sull'array e ad ogni iterazione avresti dovuto confrontare la stringa con la parola corrente presa dall'array, magari mettendo un "break" nel caso avessi trovato la parola, così da interrompere il ciclo ed evitare iterazioni inutili, poiché basta trovarne anche una perché la tua condizione sia vera.

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2015
    Messaggi
    25
    grazie ancora.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2019 vBulletin Solutions, Inc. All rights reserved.