Joomla.it Forum
Non solo Joomla... => Sviluppo => : zeus 22 Feb 2012, 16:29:42
-
Cari,
sviluppando un plugin, andava tutto bene finchè non ho avuto necessità di chiamare il plugin con dei parametri diversi a seconda dell'articolo che lo richiama.
In pratica prima per richiamare usavo la stringa: {zeusmap}
ora invece voglio usare qualcosa del tipo {zeusmap scheda=10}
e che problema c'è? mi direte....
ebbene sinora con la str_replace ha sempre funzionato, adesso invece devo usare le tanto odiate regex...
sto impazzendo ma non riesco a trovare la dritta.
mi servirebbe un aiuto su queste due righe di codice:
preg_match('{zeusmap(.*)}',$article->text,$match);
print $match[1];
ogni volta che provo una modifica o ho un errore oppure semplicemente la variabile ritorna vuota.
chi mi aiuta??
grazie in anticipo..
B.
-
Ciao,
utilizzando questa istruzione:
preg_match('{\{zeusmap(.*)\}}',$article->text,$match);
otterrai in $match[1] tutti i parametri, se il tag è presente ovviamente.
A questo punto dovrai parsare per ottenere i singoli valori
-
Grazie mille per la risposta.
anche se ieri avevo risolto così:if(eregi("{zeusmap}(.+){/zeusmap}", $article->text, $regs)) {
$scheda=$regs[1];
} else {
$scheda=0;
}
ossia di usare due marcatori invece di uno.
Più tardi provo anche la tua soluzione, che sicuramente sarà più performante per grandi testi.
ancora grazie
B.