Lorsque vous rencontrez un message d'erreur du type "Avertissement : preg_replace() : modificateur inconnu '] ' dans xxx.php à la ligne 38," cela implique généralement un délimiteur manquant ou un délimiteur non échappé dans votre fichier habituel. expression.
En PHP, les expressions régulières nécessitent une paire de délimiteurs, tels que /, # ou ~. Sans délimiteurs appropriés, le moteur d'expression régulière peut mal interpréter le modèle et les modificateurs, conduisant à l'erreur « Modificateur inconnu ». De plus, si le délimiteur apparaît dans le modèle regex sans être échappé, cela peut provoquer le même problème.
Utilisation de délimiteurs :
Wrap votre modèle regex avec les délimiteurs appropriés. Par exemple, vous pouvez utiliser « ~ » dans le code que vous avez fourni :
preg_replace("~<div[^>]*><ul[^>]*>", "", wp_nav_menu(array('theme_location' => 'nav', 'echo' => false)));
Échapper aux délimiteurs :
Vous pouvez également échapper au délimiteur s'il apparaît dans le modèle regex en utilisant la barre oblique inverse ''. Par exemple :
preg_replace("/foo[^/]+bar/i", "", wp_nav_menu(array('theme_location' => 'nav', 'echo' => false)));
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!