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?
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?
Ti suggerisco di iniziare leggendo il manuale ufficiale:
http://www.php.net/explode
http://www.php.net/array_reverse
http://www.php.net/implode
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
E dire che bastava seguire i suggerimenti dati ...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"...
Codice PHP:
<?php
$string = "Hello to all the World";
$string = implode(' ', array_reverse(explode(' ', $string)));
print($string);
?>
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.
Il suggerimento era indicato nel primo post, ma ...Originariamente inviato da horizon
Ottimo, grazie del suggerimento.
Ristruttura il database in modo da gestire nome e cognome separatamente. Crea un indice FULLTEXT ed esegui la ricerca su di esso.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.
Hai ragione, non avevo letto a fondo le pagine dei link (specialmente il secondo).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.
Ciao.