bonjour,

je cherche une fonction php qui me permet de choisir une chaîne de caractère dans une varaible

exemple :
http://www.monsite.com/index.php?value=pkmg&id=54

je cherche à récupérer le value dans ce lien,
donc au final, je dois avoir en sorti "pkmg"

je peux utiliser substr, mais je cherche un truc qui détecte le 'value=', et qui prend en compte seulement les 4 caractères qui suit 'value='

j'ai essayé la méthode bourrin, mais sans résultat :

$v="value=";
$varaible= substr($varaible, $v, 4); 

Modifié par Smithow (15 Apr 2011 - 15:09)
Bonjour,

Dans ton exemple, il suffit simplement d'utiliser GET :


$varaible = $_GET["value"];


Mais tu n'es peut-être pas dans le cas d'une url ?
Salut,

Si tu dois extraire les 4 caractères qui suivent "value" dans une chaîne de caractère, tu devrais jeter un coup d'oeil sur les expressions régulières.

Je ne suis pas certain d'avoir bien saisi le sens de ton dernier post, par contre. Le but est bien d'extraire value, pas de l'insérer dans une chaine ?
oui, je cherche à extraire les 4 caractère qui suivent "value=" ( et non "value" ), je ne cherche pas à récupérer cette valeur grâce à un GET

ça marche très bien avec substr, mais cela fonctionne seulement avec une nombre de caractère fixe
le lien que je dois poster possède un nombre de caractère qui varie...
Ok, expressions régulières ce sera alors. Quelque chose comme:
    $string = 'http://chalalalala.com/index.php?value=targ&jesuis=tropfort';
    
    preg_match_all('/value=(?<value>[a-zA-Z0-9]+)&?/', $string, $extracted_values);
    
    var_dump($extracted_values); die();
Ca vaut la peine de se prendre un peu (beaucoup) la tête sur les regex, c'est un outil extrêmement puissant quand on sait un peu les manier...