Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    9

    Invertire contenuto di una stringa

    Salve a tutti,

    vorrei cercare di invertire il contenuto di una variabile, ad esempio $string = "Hello to all the World";
    per il mio script dovrei ottenere come output che mi dia: World the all to Hello

    Qualche idea?

  2. #2

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    9
    Originariamente inviato da filippo.toso
    Ti suggerisco di iniziare leggendo il manuale ufficiale:

    http://www.php.net/explode
    http://www.php.net/array_reverse
    http://www.php.net/implode

    Ok, so che ci sono i manuali, ma lo scopo di un Forum dovrebbe essere quello di dare dei suggerimenti al codice non risposte del tipo "arrangiati"...

    Comunque ho risolto in questo modo (lascio traccia in modo che forse a qualcuno può interessare):

    <?php
    $string = "Hello World";
    $pieces = explode(" ", $string);
    $first = $pieces[1];
    // piece2
    $second = $pieces[0]; // piece1
    $invertednewsearchstring = $first;

    $invertednewsearchstring .= " ";
    $invertednewsearchstring .= $second;
    echo $invertednewsearchstring;
    // ottengo come risultato --> World Hello
    ?>


    Tutto questo perchè ho un database con un campo AUTORE che se gli passo una query tipo "COGNOME NOME" mi da un risultato, ma se gli passo una query tipo "NOME COGNOME" non mi dà nessun risultato.

    Ora risolvo in questo modo, anche se non so se è proprio il modo più efficace:
    SELECT * FROM books WHERE autore LIKE '%$string%' OR autore LIKE
    '%$invertednewsearchstring%'

    Ciao

  4. #4
    Originariamente inviato da horizon
    Ok, so che ci sono i manuali, ma lo scopo di un Forum dovrebbe essere quello di dare dei suggerimenti al codice non risposte del tipo "arrangiati"...
    E dire che bastava seguire i suggerimenti dati ...

    Codice PHP:
    <?php 
    $string 
    "Hello to all the World";
    $string implode(' 'array_reverse(explode(' '$string)));
    print(
    $string);
    ?>

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    9
    Originariamente inviato da filippo.toso
    E dire che bastava seguire i suggerimenti dati ...

    Codice PHP:
    <?php 
    $string 
    "Hello to all the World";
    $string implode(' 'array_reverse(explode(' '$string)));
    print(
    $string);
    ?>

    Ottimo, grazie del suggerimento.

    Secondo te è corretto eseguire quest'operazione di "reverse" per dare risultati nella precedente query mysql oppure c'è un modo più veloce direttamente nella query sql.
    Purtroppo la struttura attuale del database ha il campo Autore in cui si inserisce cognome e nome assieme.

    Ciao e grazie.

  6. #6
    Originariamente inviato da horizon
    Ottimo, grazie del suggerimento.
    Il suggerimento era indicato nel primo post, ma ...

    Originariamente inviato da horizon
    Secondo te è corretto eseguire quest'operazione di "reverse" per dare risultati nella precedente query mysql oppure c'è un modo più veloce direttamente nella query sql.
    Ristruttura il database in modo da gestire nome e cognome separatamente. Crea un indice FULLTEXT ed esegui la ricerca su di esso.

  7. #7
    Utente di HTML.it
    Registrato dal
    May 2009
    Messaggi
    9
    Originariamente inviato da filippo.toso
    Il suggerimento era indicato nel primo post, ma ...


    Ristruttura il database in modo da gestire nome e cognome separatamente. Crea un indice FULLTEXT ed esegui la ricerca su di esso.
    Hai ragione, non avevo letto a fondo le pagine dei link (specialmente il secondo).

    Ciao.

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.