par
Pitet » 30 août 2013, 15:01
Salut,
Voici un exemple de solution :
<?php
$chaine = 'ksqdj qskdjh qsjkdh qsjd [GALERIE-5] qskjh qkjhqs kdjqsh kdqsu qksjd [GALERIE-19] qskgh qskjdhqs kdjqhs kjdqs';
$mesGalleries = array();
$findGallery = TRUE;
$start = 0;
while ($findGallery) {
// position du début du tag [GALERIE-<num>]
$posStartTag = strpos($chaine, '[GALERIE-', $start);
if ($posStartTag !== FALSE) {
// position de la fermerture du tag ]
$posEndTag = strpos($chaine, ']', $posStartTag);
// taille de <num>
$lenghtToPosEndTag = $posEndTag - $posStartTag;
// numéro de la galerie
$galleryNum = substr($chaine, $posStartTag + 9, $lenghtToPosEndTag - 9);
$mesGalleries[] = $galleryNum;
// on place le curseur pour rechercher la prochaine galerie
$start = $posEndTag;
} else {
$findGallery = FALSE;
}
}
var_dump($mesGalleries);
?>
Bonne journée
Salut,
Voici un exemple de solution :
[php]
<?php
$chaine = 'ksqdj qskdjh qsjkdh qsjd [GALERIE-5] qskjh qkjhqs kdjqsh kdqsu qksjd [GALERIE-19] qskgh qskjdhqs kdjqhs kjdqs';
$mesGalleries = array();
$findGallery = TRUE;
$start = 0;
while ($findGallery) {
// position du début du tag [GALERIE-<num>]
$posStartTag = strpos($chaine, '[GALERIE-', $start);
if ($posStartTag !== FALSE) {
// position de la fermerture du tag ]
$posEndTag = strpos($chaine, ']', $posStartTag);
// taille de <num>
$lenghtToPosEndTag = $posEndTag - $posStartTag;
// numéro de la galerie
$galleryNum = substr($chaine, $posStartTag + 9, $lenghtToPosEndTag - 9);
$mesGalleries[] = $galleryNum;
// on place le curseur pour rechercher la prochaine galerie
$start = $posEndTag;
} else {
$findGallery = FALSE;
}
}
var_dump($mesGalleries);
?>
[/php]
Bonne journée