Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sallar/laravel-jdate
A Laravel Bundle to help working with Jalali (Shamsi) Dates
https://github.com/sallar/laravel-jdate
Last synced: 4 days ago
JSON representation
A Laravel Bundle to help working with Jalali (Shamsi) Dates
- Host: GitHub
- URL: https://github.com/sallar/laravel-jdate
- Owner: sallar
- Created: 2012-10-10T22:24:37.000Z (about 12 years ago)
- Default Branch: master
- Last Pushed: 2016-02-07T07:11:44.000Z (almost 9 years ago)
- Last Synced: 2024-08-03T18:15:29.794Z (3 months ago)
- Language: PHP
- Size: 109 KB
- Stars: 26
- Watchers: 4
- Forks: 8
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-persian - laravel-jdate - A Laravel 3 Bundle to help working with Jalali (Shamsi) Dates. (Jalali Date)
README
# jDate Bundle for Laravel #
This bundle helps developers to easily work with Jalali (Shamsi or Iranian) dates in Laravel applications, based on [Jalali (Shamsi) DateTime](https://github.com/sallar/jDateTime) class.
## Features ##
- You can pass strings or raw timestamps to make dates. e.g: Next Tuesday
- You can reforge the current date. e.g: +3 days
- You can format date using `strftime()` parameters.## Install ##
To install using artisan run the following CLI command:
```
php artisan bundle:install jdate
```
Or just copy the downloaded package to ``app/bundles``Then in ``application/bundles.php`` add:
```php
'jdate' => array('auto' => true),
```## Examples ##
Some Examples
```php
// 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](http://php.net/manual/en/function.strftime.php).
## 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 ##
- This bundle is created based on [Laravel-Date](https://github.com/swt83/laravel-date) by [Scott Travis](https://github.com/swt83) (MIT Licensed).
- [Jalali (Shamsi) DateTime](https://github.com/sallar/jDateTime) class included in the package is created by [Sallar Kaboli](http://sallar.me) and is released under the MIT License.
- This package was created by [Sallar Kaboli](http://sallar.me) and is released under the MIT License.