【问题标题】:Grab values from string [duplicate]从字符串中获取值[重复]
【发布时间】:2021-12-07 13:33:30
【问题描述】:

我有以下字符串:

$string = "No+Label+name=Aaron+Smith&No+Label+email=aaron.smith@live.co.uk";

我想要一些 PHP 从这个字符串中获取姓名和电子邮件地址值。

我最初尝试了以下但没有任何进展:

$str = "No+Label+name=Aaron+Smith&No+Label+email=aaron.smith@live.co.uk";
preg_match_all('#value=([^\s]+)#', $str, $matches);
echo implode(' ', $matches[1]);

我基本上想说:

echo $string['No+Label+name']; // outputs name

【问题讨论】:

  • 看起来像一个查询字符串。使用php.net/manual/en/function.parse-str.php
  • 这基本上是一种查询字符串格式,所以php.net/manual/en/function.parse-str.php 可以帮助您。 (您只需要考虑它将执行 URL 解码,因此 + 将在您的数组键和值中变为空格。)
  • 真的很好@CBroe - 谢谢你。现在解决了:-)
  • 请注意,我们更喜欢这里的技术写作风格。我们轻轻地劝阻问候,希望你能帮助,谢谢,提前感谢,感谢信,问候,亲切的问候,签名,请你能帮助,聊天材料和缩写 txtspk,恳求,你多久了被卡住、投票建议、元评论等。只需解释您的问题,并展示您尝试过的内容、预期的内容以及实际发生的情况。

标签: php


【解决方案1】:

不是一个很好的答案,但如果你有这个字符串,你可以使用它

$str = "No+Label+name=Aaron+Smith&No+Label+email=aaron.smith@live.co.uk";
$temp = explode('+', $str);
$name = explode('=',$temp[2]);
$email = explode('=',$temp[5]);
echo ($name[1]);
echo "<br/>";
echo ($email[1]);

【讨论】:

    猜你喜欢
    • 2014-02-10
    • 2019-02-20
    • 1970-01-01
    • 1970-01-01
    • 2013-08-12
    • 1970-01-01
    • 2013-11-05
    • 1970-01-01
    • 2017-07-03
    相关资源
    最近更新 更多