Bonjour,
Dans le cadre de mon passage de Phoca Download à EDocman, je tente un script qui me permettra de convertir les shortcodes Phoca en shortcodes EDocman.
Le shortcode cherché commence par "{phocadownload file=view"
J'en suis à ce code qui me paraît bizarre, pour trouver d'abord la première occurrence !
Si je n'enlève pas 8 à $pos, la chaîne est tronquée de "{phocado".
Je ne comprends pas pourquoi ce décalage se produit en utilisant mb_substr()
Qui peut m'expliquer ?
Merci d'avance !
Dans le cadre de mon passage de Phoca Download à EDocman, je tente un script qui me permettra de convertir les shortcodes Phoca en shortcodes EDocman.
Le shortcode cherché commence par "{phocadownload file=view"
J'en suis à ce code qui me paraît bizarre, pour trouver d'abord la première occurrence !
Code:
$content = file_get_contents($file); $needle ='{ph'; $needlef ='}'; $pos = strpos( $content, $needlef); while ( $pos !== false ): $pos = $pos -8; echo $pos . '(pos) <br/>'; $posf = strpos( $content, $needlef, $pos ); echo $posf . ' (posf) <br/>'; $length = $posf - $pos - 7; echo $length . '(length)<br/>'; //if ($length === 0) $length=50; $chaine = mb_substr($content,$pos,$length); echo $chaine . '(chaine) <br/>'; $pos = strpos( $content, $needle, $posf ); break; endwhile;
Je ne comprends pas pourquoi ce décalage se produit en utilisant mb_substr()
Qui peut m'expliquer ?
Merci d'avance !
Commentaire