New

Just launched: Vueblocks, a brand-new search engine for Vue packages! Explore Vueblocks →

alifattahi/jalali

This Package helps developers to easily work with Jalali (Shamsi or Iranian) dates in Laravel 4 applications, based on Jalali (Shamsi) DateTime class. This Package is based on a Laravel 3 bundle sallar/laravel-jdate by Sallar Kaboli.
517 3
Install
composer require alifattahi/jalali:dev-master
PHP:>=5.3.0
License:MIT
Last Updated:Jan 24, 2018
Links: GitHub  ·  Packagist
Maintainer: ali_fattahi

alifattahi/jalali

This Package helps developers to easily work with Jalali (Shamsi or Iranian) dates in Laravel 4 applications, based on Jalali (Shamsi) DateTime class. This Package is based on a Laravel 3 bundle sallar/laravel-jdate by Sallar Kaboli.

Installation

In the require key of composer.json file add the following

    "alifattahi/jalali": "dev-master"

Run the Composer update comand

$ composer update

In your config/app.php add 'Alifattahi\Jalali\JalaliServiceProvider' to the end of the $providers array

    'providers' => array(

        'Illuminate\Foundation\Providers\ArtisanServiceProvider',
        'Illuminate\Auth\AuthServiceProvider',
        ...
        'Alifattahi\Jalali\JalaliServiceProvider',

    ),

Basic Usage

Examples

Some Examples (based on examples provided by Sallar)

// default timestamp is now
$date = jDate::forge();

// pass timestamps
$date = jDate::forge(1333857600);

// pass strings to make timestamps
$date = jDate::forge('last sunday');

// get the timestamp
$date = jDate::forge('last sunday')->time(); // 1333857600

// format the timestamp
$date = jDate::forge('last sunday')->format('%B %d، %Y'); // دی 02، 1391

// get a predefined format
$date = jDate::forge('last sunday')->format('datetime'); // 1391-10-02 00:00:00
$date = jDate::forge('last sunday')->format('date'); // 1391-10-02
$date = jDate::forge('last sunday')->format('time'); // 00:00:00

// amend the timestamp value, relative to existing value
$date = jDate::forge('2012-10-12')->reforge('+ 3 days')->format('date'); // 1391-07-24

// get relative 'ago' format
$date = jDate::forge('now - 10 minutes')->ago() // ۱۰ دقیقه پیش

Formatting

For help in building your formats, checkout the PHP strftime() docs.

Notes

The class relies on strtotime() to make sense of your strings, and strftime() to make the format changes. Just always check the time() output to see if you get false timestamps... which means the class couldn't understand what you were telling it.

License

Related Packages

miladr/jalali

This Package helps developers to easily work with Jalali (Shamsi or Iranian) dat...

9,816 48
kakajan/lumen-jalali

This Package helps developers to easily work with Jalali (Shamsi or Iranian) dat...

408 4
morilog/jalali

This Package helps developers to easily work with Jalali (Shamsi or Iranian) dat...

1,475,520 927
sajjadrad/jalali

This Package helps developers to easily work with Jalali (Shamsi or Iranian) dat...

173 1
hekmatinasser/verta

This Package helps developers to work with Jalali Datetime class for Laravel Fra...

633,211 660