Skip to content

Tokenize.php 'strlen()' (Editado 11.04.25) #90

@joelmiguelvalente

Description

@joelmiguelvalente

En el archivo

$strLen = strlen($str);

Deprecated: strlen(): Passing null to parameter #1 ($string) of type string is deprecated in ...\JBBCode\Tokenizer.php

Una posible solución fue añadir esto if($str == NULL) return; sobre dicha línea mencionada!

11.04.2025
Otra forma (tocando el archivo manualmente)
$strLen = strlen($str); a esto $strLen = strlen($str ?? '');

Usando un .patch, pueden crear un patches/jbbcode-tokenizer-null-fix.patch y en el añaden

--- a/JBBCode/Tokenizer.php 2025-04-11 12:41:49.798753100 -0300
+++ b/JBBCode/Tokenizer.php     2025-04-11 12:42:29.820915800 -0300
@@ -26,7 +26,7 @@
      */
     public function __construct($str)
     {
-        $strLen = strlen($str);
+        $strLen = strlen($str ?? '');
         $position = 0;
 
         while ($position < $strLen) {

En su composer.json agregan debajo de "autoload": {...}

   "extra": {
      "patches": {
         "jbbcode/jbbcode": {
            "Fix null input in Tokenizer": "app/patches/jbbcode-tokenizer-null-fix.patch"
         }
      }
   },

ejecutan

composer clear-cache
composer update

y prueben.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions