PHP code example of skywit / laravel-scout-tntsearch

1. Go to this page and download the library: Download skywit/laravel-scout-tntsearch library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

skywit / laravel-scout-tntsearch example snippets


// bootstrap/app.php

// 取消注释
$app->withFacades();
$app->withEloquent()

// 注意先后顺序
$app->register(Skywit\Scout\LumenServiceProvider::class);
$app->register(Laravel\Scout\ScoutServiceProvider::class);

namespace App;

use Illuminate\Database\Eloquent\Model;
use Laravel\Scout\Searchable;

class Post extends Model
{
    use Searchable;

    /**
     * Get the indexable data array for the model.
     *
     * @return array
     */
    public function toSearchableArray()
    {
        return [
            'id' => $this->id,
            'title' => $this->title,
            'body' => strip_tags($this->body),
        ];
    }
}

# scout 命令
php artisan scout:import 'App\Post'

# tntsearch 命令, 性能更好
php artisan tntsearch:import 'App\Post'

Post::search('laravel教程')->get();

ini_set('memory_limit', '1024M');

// 高亮 title 字段
@highlight($post->title, $query);

// 用 strong 作为高亮标签
@highlight($post->title, $query, 'strong');

highlight($post->title, $query);

highlight($post->title, $query, 'strong');

use Skywit\Scout\Highlighter;

// ...

app(Highlighter::class)->highlight($post->title, $query);
bash
php artisan vendor:publish --provider="Laravel\Scout\ScoutServiceProvider"
bash
php artisan vendor:publish --provider="Skywit\Scout\TNTSearchScoutServiceProvider"
bash
composer