Skip to content
forked from miladr/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.

License

Notifications You must be signed in to change notification settings

sajjadrad/jalali

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

sajjadrad/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.This package converted from Laravel 3 bundle to Laravel 4 package by Milad Rey.Older version of this library was unable to make a renge of numbers between two years in jalali with latin style.

Installation

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

    "sajjadrad/jalali": "dev-master"

Run the Composer update comand

$ composer update

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

    'providers' => array(

        'Illuminate\Foundation\Providers\ArtisanServiceProvider',
        'Illuminate\Auth\AuthServiceProvider',
        ...
        'Sajjadrad\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() // ۱۰ دقیقه پیش

// Format function return number in persian style by default.You can convert it to latin style by init convert flag in argument.
$date = jDate::forge(time())->format('Y',true);

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

About

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.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 100.0%