Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    Cercare testo in una variabile

    Ciao a tutti,
    avrei bisogno di fare una semplice operazione ma non ci sto riuscendo

    In pratica io ho una variabile e devo fare un controllo. Se all'interno della variabile è contenuta una determinata parola devo eseguire un'azione, altrimenti devo farne fare un'altra.

    Esempio

    $variabile = 'bla bla pippo bla bla';

    se in $variabile è contenuta la parola pippo: Fai una determinata cosa
    se in $variabile è contenuta la parola pluto: Fai un'altra cosa

    e così via.

    Qualcuno potrebbe darmi una mano?

  2. #2
    Utente di HTML.it L'avatar di oronze
    Registrato dal
    Jun 2001
    Messaggi
    3,543

    No ai layout tabellari!

    Insulto libero: http://forum.html.it/forum/showthread.php?s=&postid=12524872#post12524872

  3. #3
    Ho provato ma non mi funziona
    Codice PHP:
    while ($dati mysql_fetch_array($sql)) {

    $content $dati['contenuto']; //Immaginate che in questo contenuto ci sia "bla bla bla pluto bla bla"


    $pos_pluto strpos($content"pluto");
    $pos_pippo strpos($content"pippo");
    $pos_paperino strpos($content"paperino");


    if (
    $pos_pluto) { $pos "pluto";}
    elseif (
    $pos_pippo) { $pos "pippo";}
    elseif (
    $pos_paperino)  { $pos "paperino";}

    echo 
    $pos;
    switch (
    $pos) {

    case 
    "pluto": {
    echo 
    "Ciao Pluto!";
    break;
    }

    case 
    "pippo": {
    echo 
    "Ciao Pippo!";
    break;
    }

    case 
    "paperino": {
    echo 
    "Ciao Paperino!";
    break;
    }
    }


    Supponiamo che la query mi dia 3 risultati per $dati['contenuto']. Il primo valore contiene "pluto", il secondo "pippo" e il terzo "paperino".

    Bene, lui mi restituisce "Ciao pluto" tutte e 3 le volte! In pratica trova pluto la prima volta e lo mantiene anche nelle successive :S

  4. #4
    Utente di HTML.it L'avatar di oronze
    Registrato dal
    Jun 2001
    Messaggi
    3,543
    fatti stampare anche content...magari è lì il problema...senza fare delle prove io non posso aiutarti

    No ai layout tabellari!

    Insulto libero: http://forum.html.it/forum/showthread.php?s=&postid=12524872#post12524872

  5. #5
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Codice PHP:
    <?php
    $array 
    = array('pinco palla','bla bla bla pluto bla bla','bla bla bla Pippo bla bla','bla bla bla PAPERINO bla bla','bla bla bla pinco palla bla bla');
    $ricerca = array('paperino','pippo','pluto');

    foreach(
    $array as $elem) {
      
    $trovato 0;
        foreach(
    $ricerca as $chiave) {  
              if(
    stripos($elem,$chiave)>0) {
                
    $trovato++;
                
    $var $chiave;  
            }
        }
    echo 
    $trovato "Ciao $var 
    'Ciao sconosciuto 
    '
    ;
    }
    ?>

  6. #6
    Purtroppo il problema non è nella struttura del codice... nel mio esempio ho semplificato drasticamente il codice dato che fa parte a sua volta di un ciclo molto più grosso!

    Uso wordpress e nell'interrogazione dei post ho bisogno che controlli i post appartenenti ad una determinata categoria. Nel caso pratico la categoria video. Siccome ho la necessità di inserire video da più fonti (youtube, dailymotion, etc) ho bisogno che lo script analizzi il contenuto di un post...

    La cosa che vorrei fare è estremamente semplice a livello concettuale ma non in pratica

    In pratica vorrei che se in un post c'è la parola "youtube" stampasse un determinato codice, se c'è la parola "dailymotion" ne stampasse un'altra e così via. Vorrei tanto che ci fosse un qualcosa simile al LIKE di mysql

    $content = "contenuto del post. c'è la parola youtube";
    if ($content LIKE '%youtube%') { echo "stampa codice youtube";}
    elseif ($content LIKE '%dailymotion%') { echo "stampa dailymotion";}
    elseif ($content LIKE '%revver%') { echo "stampa revver";}

    e così via...

  7. #7
    Perchè non ti installi semplicemente un plugin tipo http://www.daburna.de/blog/2006/12/1...-video-plugin/

    In alternativa, per fare quello che cerchi, solitamente si utilizzano le espressioni regolari.

  8. #8
    Ho valutato la possibilità ma non posso dato che tratto i video in un modo particolare (ad esempio, estraggo la thumbnail per farla visualizzare nell'index del blog).

    Riguardo alle espressioni regolari potresti farmi un esempio?

  9. #9
    Ho risolto con la funzione eregi

    Perché tutti consigliano strpos che invece serve per trovare la posizione di un testo?

  10. #10
    Perchè le espressioni regolari hanno un costo in termini di performance e non tutti gli utenti sono in grado di creare delle espressioni regolari.

    Comunque ti consiglio di utilizzare le PCRE al posto delle POSIX

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 © 2025 vBulletin Solutions, Inc. All rights reserved.