【问题标题】:I'd like to extract only some first characters from a response body; curl我只想从响应正文中提取一些第一个字符;卷曲
【发布时间】:2020-02-07 21:22:53
【问题描述】:

好吧,如果你和我一样感到困惑,那么为了让你更好地理解我想做什么,这就是我的想法

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://google.com/a-good-coffee');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
//sleep(6);
curl_setopt($ch, CURLOPT_POSTFIELDS, 'blablabla123abc');
echo $func = curl_exec($ch);

假设 $func 将返回这个 { "id": "great_coffee", "object": "amazing", "billing_details": google } 我想要实现的是这个 我希望 $func 只读取第二个 " " 中的文本,即“great_coffee”,每次我卷曲同一页时,结果都会随机化(可以说下次我卷曲时会是 a_good_life) 所以我不想得到一个特定的值,? *这可能吗 ?如果是,我该怎么做?

感谢您的回复,但如果我使用 json_decode,我会得到 id,是的,但我仍然会得到一些空行

【问题讨论】:

  • 为什么不直接解码 json 并提取 id 值?我不明白为什么要绕道而行,否则很直接。
  • 但是如果我使用 json_decode 我会得到 id 是的,但我仍然会得到一些空行
  • 我不知道这里的“空白行”是什么意思。您将通过解码 json 获得原生 PHP 对象。
  • 只是很多间距(大约 2 行)
  • 我不知道你所说的“很多间距”是什么意思。它完全符合您的要求。除此之外,我不知道还能如何帮助您。

标签: php string curl text


【解决方案1】:

是的,您要做的第一件事是使用json_decode 将结果解码为数组然后您只能使用array_values 函数获取数组值。从那里您只需要获取第二个索引。

【讨论】:

  • 但是如果我使用 json_decode 我会得到 id 是的,但我仍然会得到一些空行
猜你喜欢
  • 2022-11-18
  • 2019-08-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-21
  • 1970-01-01
  • 1970-01-01
  • 2020-01-03
相关资源
最近更新 更多