Un analyser BBCode récursif RegexP pour PHP 7+ à l'aide de preg_replace_callback (), basé sur un exemple de MrNiceguy sur Developers-guide.net. Gère les étiquettes imbriquées ainsi que les supports correspondants et ne tombe pas sur des balises non valides.
nécessite un compositeur
(Remarque: Remplacez dev-master par une limite de version)
{
"require" : {
"php" : " >=7.2.0 " ,
"chillerlan/php-bbcode" : " dev-master "
}
}Téléchargez la version souhaitée du package à partir du maître ou de la publication et extraire le contenu dans votre dossier de projet. Après cela:
composer install pour installer les dépendances requises et générer /vendor/autoload.php autoload.php.chillerlanBBCode vers le dossier src du packageProfit!
Pour un exemple d'implémentation, consultez le GWBBCODER ici: GW1-Database / GWBBCODE.
L'analyseur peut provoquer une charge de processeur élevée, selon l'entrée. Vous ne devriez jamais envisager de l'utiliser quelque part dans votre sous-système de sortie - Encoder sur l'entrée - vous voudrez de toute façon un aperçu. ;)
Vous pouvez également rencontrer plusieurs bogues. En fait, le bbcoder est essentiellement un outil pour extraire tout bug lié à PCRE dans PHP connu de l'homme (et peut-être inconnu). Amusez-vous! ;) Il est fortement recommandé d'utiliser ces paramètres PHP.ini, en particulier pour désactiver le PCRE JIT dans PHP7 qui est un fauteur de troubles. Dans le cas où vous rencontrez un bogue lié à PCRE, je vous demande d'ouvrir un problème ici avec le BBCode qui a provoqué l'erreur et les informations supplémentaires.
Je ne prends pas la responsabilité des processeurs en fusion, des claviers brisés, du HTML cassé, etc. Utilisez à vos risques et périls!