我想知道 laravel 中 eloquent 中使用了多少单词。我不确定 eloquent 是否可以,所以如果不是,我该如何使用 php 来做到这一点?例子 :我从以下查询中得到结果: $posts = Posts::where('post_body', 'like', '%'.$name.'%')->get(); $result = []; foreach ($posts as $post) { // Logic here to push to result and how much searched word used in result and push to array } return $result;因此,如果我搜索文件名之类的内容12345.jpeg,我想12345.jpeg知道post_body. 检查有多少,然后将使用计数和结果推送到数组。更多示例:发布正文结果:“这是 12345.jpeg 且<img src="12345.jpeg"/>” => 返回字符串中 12345.jpeg 的 2 次使用情况发布正文结果:“这是 12345.jpeg 以及<img src="12345.jpeg"/>更多 12345.jpeg”=> 返回字符串中 12345.jpeg 的 3 次使用情况post body result : => 返回结果中使用了happy world, happy life, Happy post多少。happy这是我对 1 感到满意以来的 2 次H。
2 回答
拉丁的传说
TA贡献1789条经验 获得超8个赞
可以使用PHP的substr_count
函数。
例如:
$s = "happy world, happy life, Happy post"; echo substr_count($s, "happy"); //yields 2.
来自文档:substr_count()返回 Needle 子字符串在 haystack 字符串中出现的次数。请注意,针区分大小写。
供参考的文档链接: https ://www.php.net/manual/en/function.substr-count.php
牧羊人nacy
TA贡献1862条经验 获得超7个赞
这就是您所需要的。
$posts = Posts::where('post_body', 'like', '%'.$name.'%')->get();
$posts->transform(function ($post) use ($name) {
$post = (object) $post;
$post->occurennces = substr_count($post->post_body, $name);
return $post;
});
return $posts;
- 2 回答
- 0 关注
- 89 浏览
添加回答
举报
0/150
提交
取消