@@ -13,107 +13,143 @@ class ArabicDiffForHumans
1313 public static function getFromDateString ($ dateString )
1414 {
1515 $ timeStamp = strtotime ($ dateString );
16+
1617 return self ::get ($ timeStamp );
1718 }
19+
1820 public static function get ($ timeStamp )
1921 {
2022 $ diff = self ::getDifference ($ timeStamp );
2123 $ unit = self ::unit ($ diff );
22- $ valueOfDifference = floor (self ::DiffValue ($ diff ,$ unit ));
24+ $ valueOfDifference = floor (self ::DiffValue ($ diff , $ unit ));
2325
2426 $ result = "" ;
25- switch ($ unit ){
27+ switch ($ unit ) {
2628 case 1 :
27- $ result = self ::formatResult ($ valueOfDifference ,"ثانية " ,"ثانيتين " ,"ثواني " );
29+ $ result = self ::formatResult ($ valueOfDifference , "ثانية " , "ثانيتين " , "ثواني " );
30+
2831 break ;
2932 case 2 :
30- $ result = self ::formatResult ($ valueOfDifference ,"دقيقة " ,"دقيقتين " ,"دقائق " );
33+ $ result = self ::formatResult ($ valueOfDifference , "دقيقة " , "دقيقتين " , "دقائق " );
34+
3135 break ;
3236 case 3 :
33- $ result = self ::formatResult ($ valueOfDifference ,"ساعة " ,"ساعتين " ,"ساعات " );
37+ $ result = self ::formatResult ($ valueOfDifference , "ساعة " , "ساعتين " , "ساعات " );
38+
3439 break ;
3540 case 4 :
36- $ result = self ::formatResult ($ valueOfDifference ,"يوم " ,"يومين " ,"أيام " );
41+ $ result = self ::formatResult ($ valueOfDifference , "يوم " , "يومين " , "أيام " );
42+
3743 break ;
3844 case 5 :
39- $ result = self ::formatResult ($ valueOfDifference ,"شهر " ,"شهرين " ,"أشهر " );
45+ $ result = self ::formatResult ($ valueOfDifference , "شهر " , "شهرين " , "أشهر " );
46+
4047 break ;
4148 case 6 :
42- $ result = self ::formatResult ($ valueOfDifference ,"سنة " ,"سنتين " ,"سنين " );
49+ $ result = self ::formatResult ($ valueOfDifference , "سنة " , "سنتين " , "سنين " );
50+
4351 break ;
4452
4553 }
54+
4655 return $ result ;
4756 }
48- private static function DiffValue ($ diff ,$ unit )
57+
58+ private static function DiffValue ($ diff , $ unit )
4959 {
5060 $ diffValue = 0 ;
51- switch ($ unit )
52- {
61+ switch ($ unit ) {
5362 case 1 :
5463 $ diffValue = $ diff ;
64+
5565 break ;
5666 case 2 :
5767 $ diffValue = self ::getMinutes ($ diff );
68+
5869 break ;
5970 case 3 :
6071 $ diffValue = self ::getHours ($ diff );
72+
6173 break ;
6274 case 4 :
6375 $ diffValue = self ::getDays ($ diff );
76+
6477 break ;
6578 case 5 :
6679 $ diffValue = self ::getMonths ($ diff );
80+
6781 break ;
6882 case 6 :
6983 $ diffValue = self ::getYears ($ diff );
7084 }
85+
7186 return $ diffValue ;
7287 }
88+
7389 private static function getDifference ($ timestamp )
7490 {
75- return abs (time ()- $ timestamp );
91+ return abs (time () - $ timestamp );
7692 }
7793
78- private static function unit ($ diff ){
79- if ($ diff <60 )
80- return 1 ; // seconds
81- else if ($ diff <60 *60 )
82- return 2 ; // minutes
83- else if ($ diff <24 *60 *60 )
84- return 3 ; // hours
85- else if ($ diff <24 *60 *60 *30 )
86- return 4 ; //days
87- else if ($ diff <24 *60 *60 *365 )
88- return 5 ; // months
89- else
90- return 6 ; //years
94+ private static function unit ($ diff )
95+ {
96+ if ($ diff < 60 ) {
97+ return 1 ;
98+ } // seconds
99+ elseif ($ diff < 60 * 60 ) {
100+ return 2 ;
101+ } // minutes
102+ elseif ($ diff < 24 * 60 * 60 ) {
103+ return 3 ;
104+ } // hours
105+ elseif ($ diff < 24 * 60 * 60 * 30 ) {
106+ return 4 ;
107+ } //days
108+ elseif ($ diff < 24 * 60 * 60 * 365 ) {
109+ return 5 ;
110+ } // months
111+ else {
112+ return 6 ;
113+ } //years
91114 }
92115
93- private static function getMinutes ($ diff ) {
94- return $ diff /60 ;
116+ private static function getMinutes ($ diff )
117+ {
118+ return $ diff / 60 ;
95119 }
96- private static function getHours ($ diff ) {
97- return $ diff /(60 *60 );
120+
121+ private static function getHours ($ diff )
122+ {
123+ return $ diff / (60 * 60 );
98124 }
99- private static function getDays ($ diff ) {
100- return $ diff /(60 *60 *24 );
125+
126+ private static function getDays ($ diff )
127+ {
128+ return $ diff / (60 * 60 * 24 );
101129 }
102- private static function getMonths ($ diff ) {
103- return $ diff /(60 *60 *24 *30 );
130+
131+ private static function getMonths ($ diff )
132+ {
133+ return $ diff / (60 * 60 * 24 * 30 );
104134 }
105- private static function getYears ($ diff ) {
106- return $ diff /(365 *24 *60 *60 );
135+
136+ private static function getYears ($ diff )
137+ {
138+ return $ diff / (365 * 24 * 60 * 60 );
107139 }
108140
109- private static function formatResult ($ valueOfDifference ,$ single ,$ double ,$ plural )
141+ private static function formatResult ($ valueOfDifference , $ single , $ double , $ plural )
110142 {
111- if ($ valueOfDifference== 1 )
143+ if ($ valueOfDifference == 1 ) {
112144 return "منذ " .$ single ;
113- if ($ valueOfDifference ==2 )
145+ }
146+ if ($ valueOfDifference == 2 ) {
114147 return " منذ " .$ double ;
115- if ($ valueOfDifference <=10 )
148+ }
149+ if ($ valueOfDifference <= 10 ) {
116150 return "منذ " .$ valueOfDifference ." " .$ plural ;
151+ }
152+
117153 return "منذ " .$ valueOfDifference ." " .$ single ;
118154 }
119155}
0 commit comments