elasticsearch的php客户端使用问题?

php中文网
发布: 2016-07-06 13:54:03
原创
1456人浏览过

这是文档,
https://www.elastic.co/guide/en/elasticsearch/client/php-api/current/_quickstart.html
问题在截图中:

elasticsearch的php客户端使用问题?
elasticsearch的php客户端使用问题?

补充:

问问小宇宙
问问小宇宙

问问小宇宙是小宇宙团队出品的播客AI检索工具

问问小宇宙 77
查看详情 问问小宇宙

谢谢答主 @lyt8384 。有点理不清思路,麻烦答主能否帮演示一下下面的示例:

要实现的效果就是在视图中的搜索框中输入关键词,搜索得到结果,主要问题是不知道控制器应该怎么写。

立即学习PHP免费学习笔记(深入)”;

备注:github上的封装好像看起来都挺久没更新了,不知道对最新版本的elasticsearch支持怎么样,所以我想直接用官方的php客户端。

视图:

<code><html>
<head>
    <meta charset="utf-8">
    <link href="https://cdn.bootcss.com/bootstrap/4.0.0-alpha.2/css/bootstrap.min.css" rel="stylesheet">
    <link href="https://cdn.bootcss.com/tether/1.3.2/css/tether.min.css" rel="stylesheet">
</head>
<body>

<div class="container">
    <nav class="navbar navbar-light bg-faded">
        <a class="navbar-brand" href="#">Navbar</a>
        <ul class="nav navbar-nav">
            <li class="nav-item active">
                <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
            </li>
            <li class="nav-item">
                <a class="nav-link" href="#">Features</a>
            </li>
            <li class="nav-item">
                <a class="nav-link" href="#">Pricing</a>
            </li>
            <li class="nav-item">
                <a class="nav-link" href="#">About</a>
            </li>
        </ul>
        <form class="form-inline pull-xs-right">
            <input class="form-control" type="text" placeholder="Search">
            <button class="btn btn-success-outline" type="submit">Search</button>
        </form>
    </nav>
</div>


<script src="https://cdn.bootcss.com/jquery/2.2.3/jquery.min.js"></script>
<script src="https://cdn.bootcss.com/tether/1.3.2/js/tether.min.js"></script>
<script src="https://cdn.bootcss.com/bootstrap/4.0.0-alpha.2/js/bootstrap.min.js"></script>
</body>
</html></code>
登录后复制

路由:

<code><?php

Route::group(['middleware' => 'web'], function () {

    Route::resource('/search', 'SearchController');
    
});
</code>
登录后复制

控制器:

<code><?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\Http\Requests;

class SearchController extends Controller
{

    public function index()
    {
        //
    }


    public function create()
    {
        //
    }


    public function store(Request $request)
    {
        //
    }


    public function show($id)
    {
        //
    }


    public function edit($id)
    {
        //
    }


    public function update(Request $request, $id)
    {
        //
    }


    public function destroy($id)
    {
        //
    }
}

</code>
登录后复制

模型:Article.php

<code><?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Article extends Model
{
    protected $fillable = [
        'title', 'content'
    ];
}</code>
登录后复制

回复内容:

这是文档,
https://www.elastic.co/guide/en/elasticsearch/client/php-api/current/_quickstart.html
问题在截图中:

elasticsearch的php客户端使用问题?
elasticsearch的php客户端使用问题?

补充:

谢谢答主 @lyt8384 。有点理不清思路,麻烦答主能否帮演示一下下面的示例:

要实现的效果就是在视图中的搜索框中输入关键词,搜索得到结果,主要问题是不知道控制器应该怎么写。

立即学习PHP免费学习笔记(深入)”;

备注:github上的封装好像看起来都挺久没更新了,不知道对最新版本的elasticsearch支持怎么样,所以我想直接用官方的php客户端。

视图:

<code><html>
<head>
    <meta charset="utf-8">
    <link href="https://cdn.bootcss.com/bootstrap/4.0.0-alpha.2/css/bootstrap.min.css" rel="stylesheet">
    <link href="https://cdn.bootcss.com/tether/1.3.2/css/tether.min.css" rel="stylesheet">
</head>
<body>

<div class="container">
    <nav class="navbar navbar-light bg-faded">
        <a class="navbar-brand" href="#">Navbar</a>
        <ul class="nav navbar-nav">
            <li class="nav-item active">
                <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
            </li>
            <li class="nav-item">
                <a class="nav-link" href="#">Features</a>
            </li>
            <li class="nav-item">
                <a class="nav-link" href="#">Pricing</a>
            </li>
            <li class="nav-item">
                <a class="nav-link" href="#">About</a>
            </li>
        </ul>
        <form class="form-inline pull-xs-right">
            <input class="form-control" type="text" placeholder="Search">
            <button class="btn btn-success-outline" type="submit">Search</button>
        </form>
    </nav>
</div>


<script src="https://cdn.bootcss.com/jquery/2.2.3/jquery.min.js"></script>
<script src="https://cdn.bootcss.com/tether/1.3.2/js/tether.min.js"></script>
<script src="https://cdn.bootcss.com/bootstrap/4.0.0-alpha.2/js/bootstrap.min.js"></script>
</body>
</html></code>
登录后复制

路由:

<code><?php

Route::group(['middleware' => 'web'], function () {

    Route::resource('/search', 'SearchController');
    
});
</code>
登录后复制

控制器:

<code><?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\Http\Requests;

class SearchController extends Controller
{

    public function index()
    {
        //
    }


    public function create()
    {
        //
    }


    public function store(Request $request)
    {
        //
    }


    public function show($id)
    {
        //
    }


    public function edit($id)
    {
        //
    }


    public function update(Request $request, $id)
    {
        //
    }


    public function destroy($id)
    {
        //
    }
}

</code>
登录后复制

模型:Article.php

<code><?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Article extends Model
{
    protected $fillable = [
        'title', 'content'
    ];
}</code>
登录后复制

1、Larvae是自动载入的,不需要第一行引入,直接命名空间使用就行了。其实,你可以用一些别人封装好的去简化使用方式,例如https://github.com/fadion/Bouncy 这个。用起来简单很多。

2、用了1里面的,就没这个了。。上面的红框是请求来的,就是你把对应内容填到ES里的操作。写到你需要的地方就行了。例如添加数据,修改数据。下面的是响应来的。就是ES告诉你索引OK了。

ES呢,也可以理解为一个数据库。你也是需要像mysql那样,存进数据。然后检索。。只不过他的检索很强大,还有各种运算之类的。不要把ES当成一个类或者组件什么的。安装了就能全文搜。

相关标签:
php
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号