[PHP] preg_replace via functie uitvoeren

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Hoi,


Ik ben bezig met een bb code, de volgende code werkt goed:


code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<? 
function mijnfunctie($test) 
{ 

$dit = "<ul><li>$test</li></ul>"; 

return $dit;     
} 

$patterns[0]     = '#\\[list\](.*?)\\[/list\]#si'; 
$replacements[0] = mijnfunctie(' \\1 '); 

// $patterns[1]     = etc.. 
// $replacements[1] = etc.. 

$bericht = preg_replace($patterns, $replacements, $bericht); 

echo $bericht; 
?>



Maar als ik een explode functie wil gaan gebruiken (arrays), gaat het mis..

ik krijg geen output.. als ik een echo $test bovenaan de functie zet om te kijken wat de waarde is krijg ik \1 te zien.. terwijl ik dit probleem niet hebt bij het hier bovenstaande script.


wie kan me helpen met dit script:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<? 
function mijnfunctie($test) 
{ 
    $dit = explode("[*]", $test); 
    $dit = $dit[1]; 

return $dit;     
} 

$patterns[0]     = '#\\[list\](.*?)\\[/list\]#si'; 
$replacements[0] = mijnfunctie(' \\1 '); 

// $patterns[1]     = etc.. 
// $replacements[1] = etc.. 

$bericht = preg_replace($patterns, $replacements, $bericht); 

echo $bericht; 
?>



Ik heb geprobeerd dit ervoor te gebruiken:

code:
1
2
3
4
5
$dit = explode("[*]", $test); 
     
preg_replace_callback("#\\[list\](.*?)\\[/list\]#si", $dit, "bblist"); 

echo $dit[1];



alleen zou ik niet weten hoe die moet worden gebruikt:

Warning: preg_replace_callback() requires argument 2, 'Array', to be a valid callback in ...


Help me op weg _/-\o_
Groeten! :)


-edit-
LOCK deze topic maar ofzo want ik heb het zelf al uitgevonden :X

[ Voor 9% gewijzigd door Verwijderd op 02-03-2004 23:50 ]