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 1:

Saturday 28th December 2024

الخميس القادم - 1735776000 - Thursday 02nd January 2025

الأحد الماضي - 1734825600 - Sunday 22nd December 2024

بعد أسبوع و ثلاثة أيام - 1736291250 - Tuesday 07th January 2025

منذ تسعة أيام - 1734649650 - Thursday 19th December 2024

قبل إسبوعين - 1734217650 - Saturday 14th December 2024

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

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


Example Code 1:

<?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 />";

Related Documentation: strtotime

Example Output 2:

بعد سنة واحدة و 7 أشهر

بعد سنة واحدة و 7 أشهر و إسبوعين

بعد سنة واحدة و 7 أشهر و 3 أسابيع

قبل سنة واحدة و 7 أشهر و إسبوعين و يوم واحد و 13 ساعة و 40 دقيقة و 48 ثانية


Example Code 2:

<?php
    date_default_timezone_set
('UTC');
    
    
$time  time();
    
$other $time 1.618 3600 24 365;

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

    
$str $Arabic->diffForHumans($time$other);
    echo 
"$str<br /><br />";

    
$str $Arabic->diffForHumans($time$other3);
    echo 
"$str<br /><br />";

    
$str $Arabic->diffForHumans($time$other3false);
    echo 
"$str<br /><br />";

    
$str $Arabic->diffForHumans($other$time7);
    echo 
"$str<br /><br />";

Related Documentation: diffForHumans