zvermafia/alif-api-wrapper-for-laravel

此包已被弃用且不再维护。作者建议使用zvermafia/transliteration-laravel包代替。

zvermafia/alif-api-wrapper与Laravel的集成

1.0.1 2019-07-25 20:16 UTC

This package is auto-updated.

Last update: 2020-03-25 14:46:26 UTC


README

Latest Version on Packagist Software License Build Status Coverage Status Quality Score Total Downloads

请使用zvermafia/transliteration-laravel代替此包,此仓库将于2021年被删除

zvermafia/alif-api-wrapper与Laravel的集成。

按章节导航

安装

通过Composer

$ composer require zvermafia/alif-api-wrapper-for-laravel

设置

如果您已安装Laravel >= 5.5,则可以跳过此步骤。因为存在包发现。打开config/app.php文件,找到providers键。将服务提供者添加到数组中。

Zvermafia\LaraTransliteration\LaraTransliterationServiceProvider::class

您还可以在同一文件中将别名添加到类别名列表中。

'LaraTransliterator' => Zvermafia\LaraTransliteration\Facades\LaraTransliteratorFacade::class

使用

让我们以一个包含store方法的TestController为例,其中我们想要存储一个转写文本。

// ...
use LaraTransliterator;
// ...
    public function store(Request $request)
    {
        $response = LaraTransliterator::setText($request->input('text'))
            ->toCyrillic() // or you can use ->toLatin()
            ->translit();

        $transliterated_text = $response->getResult();
    }
// ...

对于AJAX请求,您可以使用现成的控制器!首先,您必须为控制器定义路由

// in your routes file
Route::post('translit/to-cyrillic', '\Zvermafia\LaraTransliteration\Controllers\TransliteratorController@toCyrillic')->name('translit.to_cyrillic');
Route::post('translit/to-latin', '\Zvermafia\LaraTransliteration\Controllers\TransliteratorController@toLatin')->name('translit.to_latin');

为了演示AJAX请求,我们将使用jQuery

$.ajax({
    url: '/translit/cyrillic',
    type: 'POST',
    data: {
        // _token: $('meta[name="csrf-token"]').attr('content'),
        text: 'Salom, dunyo!'
    },
    dataType: 'JSON'
})
.done(function (response) {
    if (response.code === 200) {
        alert(response.text);
    } else {
        alert('Something went wrong... Check the console log:');
        console.log(response);
    }
})
.fail(function (response) {
    console.log('Whoops, something went wrong... Check the response below:');
    console.log(response);
});
// A response will be like below:
{
    "code": 200,
    "text": "Transliterated text"
} 

变更日志

有关最近更改的更多信息,请参阅CHANGELOG

测试

$ composer test

贡献

有关详细信息,请参阅CONTRIBUTINGCODE_OF_CONDUCT

安全

如果您发现任何安全相关的问题,请通过电子邮件mohirjon@gmail.com联系,而不是使用问题跟踪器。

致谢

许可协议

MIT许可(MIT)。有关更多信息,请参阅许可文件