sarojsardar/laravel-nepali-date is a Laravel package for laravel nepali date converter package.
It currently has 0 GitHub stars and 2 downloads on Packagist (latest version v1.0.1).
Install it with composer require sarojsardar/laravel-nepali-date.
Discover more Laravel packages by sarojsardar
or browse all Laravel packages to compare alternatives.
Last updated
A comprehensive Laravel package for converting English (Gregorian) dates to Nepali (Bikram Sambat) dates with full localization support.
Install the package via Composer:
composer require sarojsardar/laravel-nepali-date
The package will automatically register its service provider and facade.
// Convert today's date to Nepali
echo toNepaliDate(now()->format('Y-m-d'));
// Output: реирежреорез-режрео-резрел
// Convert specific date
echo toNepaliDate('2024-12-01');
// Output: реирежреорез-режрео-резрел
toNepaliDate()Convert English date to Nepali date with custom formatting:
// Basic conversion
echo toNepaliDate('2024-01-15');
// Output: реирежреореж-резреж-режрез
// Custom format with month name
echo toNepaliDate('2024-01-15', 'Y F d');
// Output: реирежреореж рдкреБрд╖ режрез
// With day name
echo toNepaliDate('2024-01-15', 'Y F d, l');
// Output: реирежреореж рдкреБрд╖ режрез, рд╕реЛрдорд╡рд╛рд░
// English numerals
echo toNepaliDate('2024-01-15', 'Y-m-d', false);
// Output: 2080-10-01
nepaliToday()Get today's date in Nepali:
echo nepaliToday();
// Output: реирежреорез-режрео-резрел
echo nepaliToday('Y F d, l');
// Output: реирежреорез рдХрд╛рд░реНрддрд┐рдХ резрел, рдЖрдЗрддрд╡рд╛рд░
nepaliDateArray()Get Nepali date as an array:
$date = nepaliDateArray('2024-01-15');
/*
Output:
[
'year' => 2080,
'month' => 10,
'day' => 1,
'month_name_nepali' => 'рдкреБрд╖',
'month_name_english' => 'Poush',
'day_name' => 'рд╕реЛрдорд╡рд╛рд░'
]
*/
use SarojSardar\LaravelNepaliDate\NepaliDate;
// Convert date
$nepaliDate = NepaliDate::convertToNepali('2024-01-15');
// Format date
echo NepaliDate::format('2024-01-15', 'Y F d l');
// Output: реирежреореж рдкреБрд╖ режрез рд╕реЛрдорд╡рд╛рд░
// Today's date
echo NepaliDate::today('Y-m-d');
// Output: реирежреорез-режрео-резрел
// Check if year is supported
if (NepaliDate::isValidNepaliYear(2080)) {
echo "Year 2080 is supported";
}
// Get supported year range
$range = NepaliDate::getSupportedYearRange();
// Output: ['min' => 2000, 'max' => 2100]
use SarojSardar\LaravelNepaliDate\Facades\NepaliDate;
// All class methods available through facade
echo NepaliDate::format('2024-01-15', 'Y F d');
echo NepaliDate::today();
$range = NepaliDate::getSupportedYearRange();
{{-- In your Blade templates --}}
<p>Date: {{ toNepaliDate($post->created_at->format('Y-m-d'), 'Y F d') }}</p>
<p>Today: {{ nepaliToday('Y F d, l') }}</p>
{{-- With calendar icon --}}
<span>
<i class="fas fa-calendar-alt"></i>
{{ toNepaliDate($news->published_at->format('Y-m-d')) }}
</span>
| Format | Description | Example Output |
|--------|-------------|----------------|
| Y | 4-digit year | реирежреореж |
| m | Month (01-12) | резреж |
| d | Day (01-32) | режрез |
| F | Full month name (Nepali) | рдкреБрд╖ |
| M | Full month name (English) | Poush |
| l | Day name (Nepali) | рд╕реЛрдорд╡рд╛рд░ |
$date = '2024-01-15';
echo toNepaliDate($date, 'Y-m-d'); // реирежреореж-резреж-режрез
echo toNepaliDate($date, 'Y F d'); // реирежреореж рдкреБрд╖ режрез
echo toNepaliDate($date, 'Y M d'); // реирежреореж Poush режрез
echo toNepaliDate($date, 'd F Y'); // режрез рдкреБрд╖ реирежреореж
echo toNepaliDate($date, 'l, d F Y'); // рд╕реЛрдорд╡рд╛рд░, режрез рдкреБрд╖ реирежреореж
echo toNepaliDate($date, 'Y/m/d'); // реирежреореж/резреж/режрез
The package throws InvalidArgumentException for:
try {
echo toNepaliDate('invalid-date');
} catch (InvalidArgumentException $e) {
echo "Error: " . $e->getMessage();
}
// Common error scenarios:
// - Invalid date format: "Invalid date format: invalid-date"
// - Date out of range: "Date out of supported range"
If you need to customize the package behavior:
// In your AppServiceProvider
public function boot()
{
// Custom logic here
}
The package works out of the box with sensible defaults:
// Test basic conversion
$result = toNepaliDate('2024-01-15');
assert($result === 'реирежреореж-резреж-режрез');
// Test format options
$result = toNepaliDate('2024-01-15', 'Y F d');
assert($result === 'реирежреореж рдкреБрд╖ режрез');
// Test English numerals
$result = toNepaliDate('2024-01-15', 'Y-m-d', false);
assert($result === '2080-10-01');
Contributions are welcome! Please feel free to submit a Pull Request.
git checkout -b feature/amazing-feature)git commit -m 'Add amazing feature')git push origin feature/amazing-feature)This package is open-sourced software licensed under the MIT license.
Saroj Sardar
Made with тЭдя╕П for the Nepali developer community