Archief - regexp-match als array-key gebruiken

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

GivenToFly

Legacy Member
PHP:
$aReplace = array('id' => '100');

$sInput = 'page.php?id=#id#';

preg_replace('/#(\w+)#/e', ??, $sInput)
Ik zou graag in $sInput alles van de vorm #xxx# vervangen door $aReplace['xxx']. In bovenstaand voorbeeld zou ik dus graag page.php?id=100 bekomen. Dit wil me niet echt lukken. $aReplace['$1'] werkt niet, het langs een andere functie sturen ook niet. $sInput en $aReplace komen van een andere locatie en daardoor lijkt sprintf() me ook niet meteen mogelijk

Cycloon

Legacy Member
Code:
$aReplace = array('id' => '100');
$sInput = 'page.php?id=#id#';
$sInput = preg_replace('/#(\w+)#/e', '$aReplace[$1]', $sInput) ;
echo $sInput;
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan