still-code/ar-php-laravel

ar-php-laravel

Fund package maintenance!
atmonshi

2.0.3 2024-04-02 18:34 UTC

This package is auto-updated.

Last update: 2024-12-08 10:21:17 UTC


README

laravel package for the Ar-PHP Project

this is just a wrapper to use with laravel for the Ar-PHP Library, for more details checkout khaled-alshamaa: ar-php

Installation

You can install the package via composer:

composer require still-code/ar-php-laravel

Available functions

Spell Numbers in the Arabic Idiom

dump(ArPhpLaravel::int2str(123)); // مئة و ثلاثة و عشرون
dump(ArPhpLaravel::str2int('مئة و ثلاثة و عشرون')); // 123

English-Arabic Transliteration

dump(ArPhpLaravel::en2ar('google')); // غوغل
dump(ArPhpLaravel::ar2en('خالِد الشَمعَة')); // Khalid Ash-Sham'ah

Arabic Gender Guesser

Check the Gender

dump(ArPhpLaravel::isFemale('محمد')); // false

get the gender as string

dump(ArPhpLaravel::guessGender('محمد')); // Male

Parse any Arabic textual datetime description into timestamp

dump(ArPhpLaravel::strtotime('الخميس القادم', time(), 'l dS F Y')); // Thursday 13th May 2021

Arabic Sentiment Analysis

dump(ArPhpLaravel::arSentiment(TEXT));

Arabic Text Standardize

dump(ArPhpLaravel::standard(TEXT));

Arabic Auto Summarize

dump(ArPhpLaravel::arSummary(TEXT));

Convert Money to string

dump(ArPhpLaravel::money2str(123, 'SAR', 'ar')); // مئة و ثلاثة و عشرون ريالا
dump(ArPhpLaravel::money2str(123, 'SAR', 'en')); // 123 Riyal
dump(ArPhpLaravel::money2str(123, 'EGP', 'ar')); // مئة و ثلاثة و عشرون جنيها

Spell Numbers in the Arabic Idiom

dump(ArPhpLaravel::int2indic(123)); // ١٢٣

Arabic Glyphs to Render Arabic Text

dump(ArPhpLaravel::utf8Glyphs(1229));

translate arabic text to english, useful for slug generating

dump(ArPhpLaravel::translate('اهلا بالكل')); // Ahla Balkl

Search with Eloquent and query Builder

Using search for arabic letters with Eloquent Builder

Model::searchAr('فلسطين','content')->get();

you can use the same with Query Builder:

DB::table('table_name')->searchAr('فلسطين','content')->get();

you can set the search mode OR (default) or AND

DB::table('table_name')->searchAr('فلسطين','content','OR')->get();

and it will find result for any of the words:

فلسطينيون فلسطيني فلسطينية فلسطينيتين فلسطينيين فلسطينيان فلسطينيات فلسطينيوا

you can also sort the results by using:

DB::table('table_name')->orderAr('فلسطين','content')->get();

Testing

composer test

Changelog

Please see CHANGELOG for more information what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Credits

Todo

  • write more tests
  • add more functions from the main package
  • add helpers for the Facade

License

The MIT License (MIT). Please see License File for more information.