| Autor | Zpráva | ||
|---|---|---|---|
| Manny Profil |
#1 · Zasláno: 16. 12. 2013, 10:04:51
Ahojte, pokouším se vytvořit systém na vkládání modulů do textu.
mezi značkami modulu je třeba: perex,2,foto a kód takto: function najdimodul($test)
{
$reg = "/\[mod\]|\[\/mod\]/";
$oriznuti = preg_replace($reg,'',$test[0]);
$pole = explode(',',$oriznuti);
$parametry = implode(',',array_diff($pole,array($pole[0])));
$modul = $pole[0]($parametry);
// $modul = $pole[0]($pole[1],$pole[2]);
return $modul;
}preg_replace_callback. Pokuším se vyřešit situaci, kdy modul (funkce) bude mít více, méně nabo žádné parametry.
Tento zápis s předáním řetězce do $parametry nefunguje, s tím že hlásí, že chybí druhý argument
Zakomentovaný zápis ale funguje. V čem je problém? |
||
| Tori Profil |
#2 · Zasláno: 16. 12. 2013, 10:08:34
takže účelem je zavolat funkci perex s parametry "2" a "foto" a vrátit její výsledek? Jestli ano, koukněte na call_user_func_array.
|
||
| Manny Profil |
Tori:
Díky za tip. Zápis $modul = call_user_func_array($pole[0],$parametry); už funguje
Jen ten druhý parametr, který je předáván do linku asi nefunguje jako řetězec. -- Vyřešeno $fotodir = trim($fotodir,'\'');
|
||
|
Časová prodleva: 13 let
|
|||
0