- Home
- Categorie
- Coding e Sistemistica
- PHP
- Funzione per cercare valore in stringa
-
Funzione per cercare valore in stringa
Ciao a tutti,
dovrei creare una funzione che in automatico cerca in una stringa la presenza di un nome. Esempio:
Stringa = "ciao a tutti e mario";
Vorrei far in modo che la funzione, prende i nomi dal database nella tabella username e verifica se uno di questi nomi è presente nella stringa, come potrei fare?
Diciamo che nella tabella utenti cè uno di nome "mario", in questo caso dovrebbe trovarlo nella stringa e dovrei fare un replace con link..
Caricare tutti i nomi in un array? e poi il controllo?
Non riesco a capire come fare.
Dark conto su di te o sulla community!
Saluti.
-
Ciao Sovietiko,
non sono ben sicuro di cosa vuoi ottenere alla fine, visto che non mi sembra un'operazione molto "normale".
Caricare tutto in un array può andare bene in presenza di pochi valori, altrimenti non è sicuramente un'operazione da poco.
Utilizzare qualcosa come MATCH?
-
[...]
Hai presente quando su facebook tagghi qualcuno? come avviene ciò?
Io vorrei che se su un messaggio viene citato il nome di qualcuno, automaticamente quando recupero il messaggio dal db mi viene eseguito un controllo e se cè un nome di qualche utente appare il link..
Come potrei fare?
-
Un explode e cerchi ogni singola parola, o usando la funzione MATCH dovrebbe essere possibile.
-
[...]
Mi fai un esempio pratico perfavore?
tabella user
tabella messaggiCome potrei fare? prevelo i messaggi e successivamente?
-
Dovresti farlo nel momento in cui i messaggi si scrivono più che altro, non dopo in quanto l'elaborazione la faresti più volte, e alcuni compiti potresti farli lato client in modo che dopo ad esempio la @ un file in php tramite ajax e ti consenta di mostrare gli utenti desiderati.
Non sò se sono stato abbastanza chiaro.
-
[...]
Si tu dici di usare un carattere per fare la ricerca o che prima dell'invio dati nel db..Ma se mettiamo il caso voglio cercare in una stringa che è già nel db un nome presente nella lista user, non esistono metodi? Anche se, credo, con una molte di utenti alta si rischia di sovraccaricare il db.. no?
-
Se utilizzi un carattere come @ prima del nome è molto più semplice, altrimenti dovresti cercare ogni singola parola con un conseguente aumento delle ricerche da fare nel database.
Bisogna vedere cosa intendi per mole alta, se utilizzi di indici opportunamente non dovrebbero esserci particolari problemi.
-
[...]
Per esempio, vedi qui sul forum, appena appare PHP si crea un collegamento ipertestuale.
Stessa cosa voglio fare io appena si legge un nome utente.
Unico problema è se hai 1000 utenti, quanto appesantisce il server? e 10.000?
-
Fai attenzione a non quotare il messaggio precedente, se non c'è rischio di fraintendimento sul messaggio al quale intendi replicare.
Tecnicamente non sò come avviene la cosa qui sul forum GT, sicuramente eseguirla su 10.000 richiede più tempo di 1.000 non sono comunque dei numeri enormi, e utilizzando gli indici opportunamente non ci sono, a mio avviso, problemi particolari.
-
Perfetto Dark,
vediamo come impostare o creare lo script?
Vorrei capire un attimo praticamente come fare.. Thx