如何在字符串中查找给定值Laravel

4dc9hkyq  于 2023-01-06  发布在  其他
关注(0)|答案(1)|浏览(128)

我根据请求使用guzzle获得一个字符串

$import = new ServerInviteClient();
$response = $import->client->request('GET', 'cB2EDPJ9wr');
$items = $response->getBody()->getContents();
dd($items);

第一个月
这一行有超过1000个单词,我需要找到给定的值$id
我试着搜索whereLike,但是没有成功,因为这不是数据库中的字符串,而是一个查询。我如何找到这个字符串中的值?

-------编辑

dd($item)的一部分,我需要在此行中找到$id = xqc

<!DOCTYPE html><html class="tw-root--hover"><head><meta charset="utf-8"><title>Twitch</title><meta property="og:title" content="xQc - Twitch"/><meta pr
operty="og:video:secure_url" content="https://player.twitch.tv/?channel=xqc&amp;player=facebook&amp;autoplay=true&amp;parent=meta.tag"/><meta property="
al:ios:url" content="twitch.tv/xqc"/><meta name="twitter:app:name:iphone" content="Twitch"/><meta name="twitter:app:id:iphone" content="id460177396"/><m
eta name="twitter:app:url:iphone" content="twitch.tv/xqc"/><meta property="og:type" content="video.other"/><meta property="og:video:height" content="378
"/><meta content="https://www.twitch.tv/xqc" property="og:url"/><meta name="title" content="xQc - Twitch"/><meta name="twitter:image" content="https://s
tatic-cdn.jtvnw.net/jtv_user_pictures/xqc-profile_image-9298dca608632101-300x300.jpeg"/><meta property="al:android:package" content="tv.twitch.android.a
pp"/><link rel="alternate" media="only screen and(max-width: 640px)" href="https://m.twitch.tv/xqc"/><meta name="twitter:description" content="{[][][][]
[][\][\]&#39; \&#39; &#39;\\&#39;][]\]\]\]\]\][]\[]\[\][[]\[]\;[]&#39;; .&#39;;. \;&#39;/\;]/\][\]\[][\[\][][\P][\P][\P][\P][\P][\P[]P[]\][\[][\]&#39;[\
&#39;][&#39;["/><meta property="og:image" content="https://static-cdn.jtvnw.net/jtv_user_pictures/xqc-profile_image-9298dca608632101-300x300.jpeg"/><met
a property="og:video" content="https://player.twitch.tv/?channel=xqc&amp;player=facebook&amp;autoplay=true&amp;parent=meta.tag"/><meta property="og:vide
o:type" content="text/html"/><meta property="al:ios:app_name" content="Twitch"/><meta name="twitter:app:id:googleplay" content="tv.twitch.android.app"/>
<meta name="twitter:app:id:ipad" content="id460177396"/><meta name="robots" content="index"/><meta name="twitter:title" content="xQc - Twitch"/><meta pr
operty="fb:app_id" content="161273083968709"/><meta property="al:android:app_name" content="Twitch"/><meta name="twitter:app:name:googleplay" content="T
witch"/><meta property="og:site_name" content="Twitch"/><meta property="og:description" content="{[][][][][][\][\]&#39; \&#39; &#39;\\&#39;][]\]\]\]\]\]
[]\[]\[\][[]\[]\;[]&#39;; .&#39;;. \;&#39;/\;]/\][\]\[][\[\][][\P][\P][\P][\P][\P][\P[]P[]\][\[][\]&#39;[\&#39;][&#39;["/><meta name="twitter:card" cont
ent="summary"/><meta name="twitter:site" content="@twitch"/><meta property="og:video:width" content="620"/><meta content="id460177396" property="al:ios:
app_store_id"/><meta name="twitter:app:name:ipad" content="Twitch"/><meta name="twitter:app:url:ipad" content="twitch.tv/xqc"/><meta name="description"
content="{[][][][][][\][\]&#39; \&#39; &#39;\\&#39;][]\]\]\]\]\][]\[]\[\][[]\[]\;[]&#39;; .&#39;;. \;&#39;/\;]/\][\]\[][\[\][][\P][\P][\P][\P][\P][\P[]P
[]\][\[][\]&#39;[\&#39;][&#39;["/><link rel="canonical" href="https://www.twitch.tv/xqc"/>...
2wnc66cl

2wnc66cl1#

你可以使用php原生函数strpos,这个函数返回字符串中子字符串的索引,如果找不到,返回-1,你需要验证返回值不是-1

$id = 1234567

$import = new ServerInviteClient();
$response = $import->client->request('GET', 'cB2EDPJ9wr');
$items = $response->getBody()->getContents();

$found = strpos($items, $id) !== -1;

在php8.0+中,你可以使用更简单的str_contains

但是,这不是最好的方法。id可能在项目的另一个属性中找到,结果将是不准确的。更好的方法是解码响应的主体,并验证每个项目以查看其ID是否匹配。

您没有指定主体是JSON格式、XML格式还是任何其他格式,因此很遗憾我们无法给予您一个确切的答案

相关问题