Raggruppare piu' funzioni in una sola

Antonio102

Utente Attivo
12 Set 2014
36
0
6
Ciao a tutti, sto creando uno script che prende in input un testo e come output da lo stesso testo a cui vengono sostuiti i codici per le emoticon ( ad esempio :smile: ) con la relativa faccina, le email vengono rese cliccabili cosi come i link http e ftp, e le abbreviazioni sostuite con la parola intera.

Al momento ho queste 4 funzioni, ognuna delle quali restituisce 4 output diversi, come posso raggrupparle in modo che restituiscano un unico output?

PHP:
function replacemail($matches)
{
foreach ($matches as $match)
	{
	return "<a href=\"mailto:$match\">$match</a><br>";
	}
}

$regex = '/\b(\s[[:punct:]])*([a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,6}){1}(\s[[:punct:]])*\b/i';
echo preg_replace_callback($regex,"replacemail",$text);

PHP:
function abbreviazioni($matches)
{
foreach ($matches as $match)
	{
	$conn = mysqli_connect('127.0.0.1','root','','esame') or die("Connection failed: " . $conn->connect_error);
	$query = mysqli_query($conn,"SELECT corrispondenza FROM `abbreviazioni` WHERE abbreviazione='{$match}' ");
		while ($abbr = mysqli_fetch_array($query,MYSQLI_ASSOC))
		{
		return $abbr['corrispondenza'];
		}
	$conn->close();
	}
}

$regex = '/([a-z0-9.]*)/i';
$lowertext = strtolower($text);
echo '<br>'.preg_replace_callback($regex,"abbreviazioni",$lowertext).'<br>';

PHP:
function emoji($matches)
{
foreach ($matches as $match)
	{
	$conn = mysqli_connect('127.0.0.1','root','','esame') or die("Connection failed: " . $conn->connect_error);
	$query = mysqli_query($conn,"SELECT link FROM `emoticons` WHERE emoji='{$match}' ");
		while ($link = mysqli_fetch_array($query,MYSQLI_ASSOC))
		{
		return "<img src=\"$link[link]\">";
		}
	$conn->close();
	}
}

$regex = '/(:{1}[0-9a-z]*:{1})/i';
echo '<br>'.preg_replace_callback($regex,"emoji",$text).'<br>';

PHP:
function ftphtml($matches)
{
foreach ($matches as $match)
	{
	return "<a href=\"$match\" target=\"_blank\">$match</a><br>";
	}
}

$regex = '/\b(\s[[:punct:]])*(ftps?|https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?(\s[[:punct:]])*\b/i';
echo preg_replace_callback($regex,"ftphtml",$text);
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
Puoi fare:
PHP:
$testo = ftphtml(abbreviazioni(replacemail(emoji($testo))));
Ora $testo dovrebbe avere tutto.
 
Discussioni simili
Autore Titolo Forum Risposte Data
S Raggruppare ed estrarre data più recente MySQL 6
R Raggruppare valori array PHP 5
A Raggruppare record con stessa data PHP 13
max1974 raggruppare e girare i dati in colonne MySQL 11
max1974 [PHP] Raggruppare array PHP 4
MarcoGrazia [mysql][mariadb]Raggruppare query in base alla data MySQL 2
M [PHP] [HTML] Raggruppare 4 pagine web in una PHP 3
D Raggruppare dati query con php PHP 1
N Raggruppare risultati di due tabelle PHP 1
ivarello Raggruppare Query per mese PHP 1
mircop Raggruppare elementi di una tabella PHP 2
G Raggruppare record tabella PHP 1
davide1982 Raggruppare dati in categorie con group by MySQL 2
M Raggruppare dati in array per successivo insert PHP 6
X Raggruppare risultati di una query PHP 3
S WORDPRESS NON FA INSTALLARE PIU NULLA WordPress 9
V Hosting piu' adatto Hosting 0
L Scmporre una foto dotata di varie immagini in piu layer Photoshop 2
B getElementById su piu id(Risolto) Javascript 7
D [MS Access] Piu' maschere con una sola tabella dati... MS Access 0
trattorino [Javascript] onclick su piu div insieme Javascript 1
J VENDO ACCOUNT FACEBOOK 1200 amici per lo piu' stranieri Compravendita siti e domini 0
P [Visual Basic] Copiare file piu' grandi di 2 gb in vb6 senza usare filecopy,usando get e put Visual Basic 6
A [PHP] Inviare mail con piu immagini allegate PHP 6
D [Photoshop] aggiungere piu tracce a immagine Photoshop 4
bubino8 [PHP] Select multipla su piu tabelle PHP 3
T4MAR4 [PHP] piu select in ricerca PHP 1
T4MAR4 [PHP] ricercare età con piu campi PHP 2
T4MAR4 [PHP] Inserire piu campi di ricerca PHP 2
trattorino [PHP] Eliminare piu frasi PHP 1
X [Apache] Server non piu accessibile dall'esterno Apache 0
trattorino [PHP] Unire a una query piu tabelle PHP 7
A Funzione POST o PUT e piu' variabili Sviluppo app per Android 1
G [Vendo] Diversi Blog piu' temi Compravendita siti e domini 1
M Non arrivano piu mail aiuto SEO e Posizionamento 4
S pagina news con inserimento di piu immagini PHP 0
I unire piu tabelle con gli stessi dati PHP 1
Z piu form piu allegati PHP 0
F Vendesi pagina comica con piu' di 100.000 fan Annunci servizi di Social Media Marketing 5
T Connessione a piu database Java 0
gandalf1959 my sql query, ORDER BY su piu campi MySQL 2
S Aggiornare campo in base a timestamp meno recente fra piu tabelle PHP 2
M Dividere su piu pagine un articolo lungo prelevato da db. jQuery 0
K Popolare select con piu campi in orizzontale PHP 1
M Ciclare piu query PHP 0
M Ciclare piu query MySQL 0
M Unire piu funzioni di una classe PHP 12
F [risolto] z-index su piu div HTML e CSS 2
N [Vendo]Visualizzazioni Youtube - i Prezzi piu bassi del web Annunci servizi di Social Media Marketing 4
G Dopo aver scaricato e installato Windows MovieMaker non entro piu in internet Adsl e Connettività 3

Discussioni simili