Page 170 - Corso di PHP - Livello base
P. 170
cercata anche se ci sono caratteri che la precedono. Nel
nostro caso troviamo soltanto “Ciao”, perché è vero che il
post “Un ciao ai miei amici!” ha la parola “ciao” preceduta
da altri caratteri, ma è anche seguita da un'altra sequenza (“
ai miei amici”), quindi non soddisfa i requisiti di ricerca.
Se avessimo avuto un post intitolato “Un ciao”, sarebbe
stato restituito come risultato;
-.Caso 4: il contrario del precedente, vengono trovati
“Ciao” e “Ciao a tutti!”. Abbiamo infatti cercato i record
dove il campo titolo contiene la parola cercata ma può
anche contenere una stringa di caratteri dopo. “Ciao” e
“Ciao a tutti!” soddisfano questa condizione;
-.Caso 5: vengono trovati tutti e tre i post, dal momento
che abbiamo detto di estrarre i record il cui campo titolo
contiene la parola cercata, che può essere o preceduta o
seguita da altre sequenze di caratteri.
Possiamo poi anche fare ricerche “negative”:
$query = "SELECT * FROM Post WHERE Titolo NOT LIKE '%$parolacercata%'";
In questo caso, anteponendo quindi la parola NOT
all'operatore LIKE, la nostra interrogazione fa in modo che
vengano estratti i post il cui titolo non contiene la parola
cercata, preceduta o seguita da altre stringhe di caratteri. E poi
abbiamo anche un altro carattere speciale, l'underscore:
$query = "SELECT * FROM Post WHERE Titolo LIKE '_$parolacercata_'";
In questo caso la nostra interrogazione estrae tutti i post che
contengono la parola cercata, preceduta o seguita da un solo
carattere: pertanto, se il carattere di percentuale equivale a
“qualsiasi numero di caratteri”, l'underscore equivale a “un
solo carattere”.
170