Arabic StrToTime:

Parse about any Arabic textual datetime description into a Unix timestamp.

The function expects to be given a string containing an Arabic date format and will try to parse that format into a Unix timestamp (the number of seconds since January 1 1970 00:00:00 GMT), relative to the timestamp given in now, or the current time if none is supplied.


Example Output:

Wednesday 30th September 2026

الخميس القادم - 1790812800 - Thursday 01st October 2026

الأحد الماضي - 1790467200 - Sunday 27th September 2026

بعد أسبوع و ثلاثة أيام - 1791615324 - Saturday 10th October 2026

منذ تسعة أيام - 1789973724 - Monday 21st September 2026

قبل إسبوعين - 1789541724 - Wednesday 16th September 2026

2 آب 1975 - 176169600 - Saturday 02nd August 1975

1 رمضان 1429 - 1220227200 - Monday 01st September 2008


Example Code:

<?php
    date_default_timezone_set
('UTC');
    
$time = time();

    echo 
date('l dS F Y', $time);
    echo 
'<br /><br />';

    
$Arabic = new \ArPHP\I18N\Arabic();

    
$str  = 'الخميس القادم';
    
$int  = $Arabic->strtotime($str, $time);
    
$date = date('l dS F Y', $int);
    echo 
"$str - $int - $date<br /><br />";
    
    
$str  = 'الأحد الماضي';
    
$int  = $Arabic->strtotime($str, $time);
    
$date = date('l dS F Y', $int);
    echo 
"$str - $int - $date<br /><br />";
    
    
$str  = 'بعد أسبوع و ثلاثة أيام';
    
$int  = $Arabic->strtotime($str, $time);
    
$date = date('l dS F Y', $int);
    echo 
"$str - $int - $date<br /><br />";
    
    
$str  = 'منذ تسعة أيام';
    
$int  = $Arabic->strtotime($str, $time);
    
$date = date('l dS F Y', $int);
    echo 
"$str - $int - $date<br /><br />";
    
    
$str  = 'قبل إسبوعين';
    
$int  = $Arabic->strtotime($str, $time);
    
$date = date('l dS F Y', $int);
    echo 
"$str - $int - $date<br /><br />";
    
    
$str  = '2 آب 1975';
    
$int  = $Arabic->strtotime($str, $time);
    
$date = date('l dS F Y', $int);
    echo 
"$str - $int - $date<br /><br />";

    
$str  = '1 رمضان 1429';
    
$int  = $Arabic->strtotime($str, $time);
    
$date = date('l dS F Y', $int);
    echo 
"$str - $int - $date<br /><br />";