Visualizzazione dei risultati da 1 a 9 su 9

Discussione: Split di una stringa

  1. #1
    Utente di HTML.it L'avatar di marmos
    Registrato dal
    Nov 2007
    Messaggi
    34

    Split di una stringa

    Io devo dividere una stringa e tirare fuori tutte le parole (Quindi separate da uno spazio) che ci sono al suo interno....cm posso fare??
    ho letto che devo usare il comando split()...solo che non ho capito come funziona....qualcuno mi spiega e mi fa un esempio???
    grazie
    Ciau

  2. #2
    http://it.php.net/manual/en/function.split.php

    ad esempio:

    $risultato = split(" ", $tua_stringa)

    dove $tua_stringa e' la stringa con la frase e in $risultato ti trovi un array contenente le parole della frase

  3. #3
    Utente di HTML.it L'avatar di marmos
    Registrato dal
    Nov 2007
    Messaggi
    34
    ok, capito.....il problema è.....come faccio a sapere quante parole ha scritto per poi gestire l'array??

  4. #4
    count($risultato) ti da la lunghezza dell'array

    ma per scorrerlo puoi fare un foreach

  5. #5
    Utente di HTML.it L'avatar di marmos
    Registrato dal
    Nov 2007
    Messaggi
    34
    Thanks

  6. #6
    Utente di HTML.it L'avatar di marmos
    Registrato dal
    Nov 2007
    Messaggi
    34
    Ho fatto una cosa del genere........
    Codice PHP:
    $Ricerca=$_POST['Search'];
    //divido
    $Search=split("#",$Ricerca);
    $MaxKey=count($Ricerca);
    for(
    $i=0$i<=$MaxKey$i++)
    {
    $res=mysql_query("SELECT ImgCode,ImgOwner,ImgTitle,ImgType,ImgDescription FROM Images WHERE ImgTitle LIKE '%$Search[$i]%' OR ImgTags LIKE '%$Search[$i]%' OR ImgDescription LIKE '%$Search[$i]%'")or die(mysql_error());
    while (list(
    $ImgCode,$ImgOwner,$ImgTitle,$ImgType,$ImgDescription)=mysql_fetch_row($res)){
      
      echo 
    "<table style='width: 100%; height: 167px'>
        <tr>
        <td>[b]
    $ImgTitle[/b]</td>
        </tr> 
    Solo che come risultato mi da tutte le immagini......come mai??

  7. #7
    fai un print_r dell'array

    puo' darsi che ci sia un elemento vuoto (dovuto ad esempio a due spazi consecutivi) per cui il like diventa

    SELECT .... WHERE ImgTitle LIKE '%%'

    Se e' cosi' devi trovare gli spazi doppi ed elimiarli.

    Ad esempio utilizzando le espressioni regolari (che pero' conosco poco)

  8. #8
    Utente di HTML.it L'avatar di marmos
    Registrato dal
    Nov 2007
    Messaggi
    34
    di output mi da questo
    (io ho scritto "papa godzilla")
    Array ( [0] => papa godzilla )....^^
    cosa vuol dire?
    Scommetto che lo split non funziona.......

  9. #9
    ma perche' hai fatto

    $Search=split("#",$Ricerca);

    quando le parole sono divise da spazio???

    $Search=split(" ",$Ricerca);

    se mai

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