Maison  >  Questions et réponses  >  le corps du texte

javascript - Obtenez le formulaire via file_get_content("php://input") en arrière-plan, comment analyser la valeur complète avec les paramètres

<form>
<input type="text" name="goods_name" value="西瓜500g">
<input type="text" name="origin_url" value="https://www.baidu.com?page=50&since=2015">
<input type="text" name="price" value="10.0">
</form>

Le backend est reçu via file_get_content("php://input"). Comment analyser les trois valeurs complètes​​de good_name, origin_url et price ?
Il existe une solution sur Internet qui utilise '&' comme nœud pour couper l'explosion, mais si vous faites cela, l'url origin_url que vous obtenez est

“https://www.baidu.com?page=50” 

Il y a aussi un champ supplémentaire depuis au lieu du champ complet

“https://www.baidu.com?page=50&since=2015”

Quelqu'un connaît-il une méthode permettant d'analyser complètement la valeur de l'URL avec des paramètres ?

漂亮男人漂亮男人2721 Il y a quelques jours811

répondre à tous(2)je répondrai

  • 迷茫

    迷茫2017-05-31 10:36:53

    $queryString = parse_url($url, PHP_URL_QUERY);
    parse_str($queryString, $params);
    var_dump($params);

    Merci de le signaler. Je n'ai pas utilisé ces deux fonctions depuis longtemps. J'ai oublié parse_str de recevoir la valeur de retour directement dans les paramètres = =

    .

    répondre
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-31 10:36:53

    Merci beaucoup, le code source est comme ceci,
    $packData=urldecode(file_get_contents( "php://input" ));
    parse_str($packData,$params);//La fonction parse_str n'a pas de valeur de retour , donc $params = parse_str($queryString); n'est pas la bonne façon de l'écrire
    //var_dump($param);

    répondre
    0
  • Annulerrépondre