2015-04-16 2 views
0

J'ai un client qui utilise OpenX (anciennement PHPAdsNew), qui n'est plus en développement, et qui n'est pas compatible avec les nouvelles versions de PHP (puisque ereg et ses variantes sont dépréciées); le problème ici est que je ne peux pas vraiment dire ce que le ereg est supposé remplacer pour réécrire la ligne.ereg_replace à preg_replace et OpenX

L'ancien code est:

define ('phpAds_path', ereg_replace("[/\\\\]admin[/\\\\][^/\\\\]+$", '', __FILE__)); 

Je serais très reconnaissant pour les idées de tout le monde!

Répondre

0

ajouter juste délimiteurs autour du regex:

ereg_replace("[/\\\\]admin[/\\\\][^/\\\\]+$", '', __FILE__) 

devient:

preg_replace("~[/\\\\]admin[/\\\\][^/\\\\]+$~", '', __FILE__) 
//  here __^     and here __^ 
+0

J'ai essayé, il ne parse pas l'URL .; Je pense qu'il supprime le bit d'administration de l'URL, mais je n'ai aucune idée de ce que la dernière section de l'expression rationnelle est pour. –

+0

@JamesCorthell: Votre machge regex: une barre oblique (ou backslash) puis le littéral 'admin' puis une barre oblique (ou barre oblique inverse) puis tout ce qui n'est pas une barre oblique (ou backslash) jusqu'à la fin de la chaîne. – Toto