Skip to content

Commit 7ebada7

Browse files
Code refactor
1 parent aba2804 commit 7ebada7

File tree

8 files changed

+94
-125
lines changed

8 files changed

+94
-125
lines changed

.idea/.gitignore

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/deployment.xml

Lines changed: 21 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/modules.xml

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/php-arabic-diff-for-human.iml

Lines changed: 14 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/php.xml

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/vcs.xml

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/Abstracts/ArabicDiffForHumansAbstract.php

Lines changed: 26 additions & 122 deletions
Original file line numberDiff line numberDiff line change
@@ -5,50 +5,34 @@
55
/**
66
* Class ArabicDiffForHumansAbstract
77
*
8-
* @author karam mustafa
8+
* @author karam mustafa, Abdussalam Al-Ali
99
* @package SOS\ArabicDiffForHumans\Classes
1010
*/
1111
abstract class ArabicDiffForHumansAbstract
1212
{
13+
14+
private $toDivideBy =
15+
[
16+
1, // seconds [0]
17+
60, // minute [1]
18+
60*60, // hours [2]
19+
60 * 60 * 24, // days [3]
20+
60 * 60 * 24 * 30, // months [4]
21+
60 * 60 * 24 * 365 // years [5]
22+
];
1323
/**
1424
*
1525
*
1626
* @param $diff
1727
* @param $unit
1828
*
1929
* @return float|int
20-
* @author karam mustafa
30+
* @author Abdussalam Al-Ali
2131
*/
2232
protected function DiffValue($diff, $unit)
2333
{
24-
$diffValue = 0;
25-
26-
switch ($unit) {
27-
case 1:
28-
$diffValue = $diff;
29-
30-
break;
31-
case 2:
32-
$diffValue = $this->getMinutes($diff);
33-
34-
break;
35-
case 3:
36-
$diffValue = $this->getHours($diff);
37-
38-
break;
39-
case 4:
40-
$diffValue = $this->getDays($diff);
41-
42-
break;
43-
case 5:
44-
$diffValue = $this->getMonths($diff);
45-
46-
break;
47-
case 6:
48-
$diffValue = $this->getYears($diff);
49-
}
50-
51-
return $diffValue;
34+
echo $this->toDivideBy[$unit-1]. '\n';
35+
return ( $diff / $this->toDivideBy[$unit-1]);
5236
}
5337

5438
/**
@@ -70,101 +54,21 @@ protected function getDifference($timestamp)
7054
* @param $diff
7155
*
7256
* @return int
73-
* @author karam mustafa
57+
* @author Abdussalam Al-Ali
7458
*/
7559
protected function unit($diff)
7660
{
77-
if ($diff < 60) {
78-
return 1;
79-
} // seconds
80-
else {
81-
if ($diff < 60 * 60) {
82-
return 2;
83-
} // minutes
84-
else {
85-
if ($diff < 24 * 60 * 60) {
86-
return 3;
87-
} // hours
88-
else {
89-
if ($diff < 24 * 60 * 60 * 30) {
90-
return 4;
91-
} //days
92-
else {
93-
if ($diff < 24 * 60 * 60 * 365) {
94-
return 5;
95-
} // months
96-
else {
97-
return 6;
98-
}
99-
}
100-
}
101-
}
102-
} //years
103-
}
104-
105-
/**
106-
*
107-
*
108-
* @param $diff
109-
*
110-
* @return float|int
111-
* @author karam mustafa
112-
*/
113-
protected function getMinutes($diff)
114-
{
115-
return $diff / 60;
116-
}
117-
118-
/**
119-
*
120-
*
121-
* @param $diff
122-
*
123-
* @return float|int
124-
* @author karam mustafa
125-
*/
126-
protected function getHours($diff)
127-
{
128-
return $diff / (60 * 60);
129-
}
130-
131-
/**
132-
*
133-
*
134-
* @param $diff
135-
*
136-
* @return float|int
137-
* @author karam mustafa
138-
*/
139-
protected function getDays($diff)
140-
{
141-
return $diff / (60 * 60 * 24);
142-
}
143-
144-
/**
145-
*
146-
*
147-
* @param $diff
148-
*
149-
* @return float|int
150-
* @author karam mustafa
151-
*/
152-
protected function getMonths($diff)
153-
{
154-
return $diff / (60 * 60 * 24 * 30);
155-
}
156-
157-
/**
158-
*
159-
*
160-
* @param $diff
161-
*
162-
* @return float|int
163-
* @author karam mustafa
164-
*/
165-
protected function getYears($diff)
166-
{
167-
return $diff / (365 * 24 * 60 * 60);
61+
if ($diff < 60)
62+
return 1; // seconds
63+
if ($diff < 60 * 60)
64+
return 2; // minutes
65+
if ($diff < 24 * 60 * 60)
66+
return 3; // hours
67+
if ($diff < 24 * 60 * 60 * 30)
68+
return 4; //days
69+
if ($diff < 24 * 60 * 60 * 365)
70+
return 5; // months
71+
return 6; //years
16872
}
16973

17074
/**

src/Classes/ArabicDiffForHumans.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,11 +38,11 @@ public function getFromDateString($dateString)
3838
public function get($timeStamp)
3939
{
4040
$diff = $this->getDifference($timeStamp);
41-
41+
echo $diff; echo "\n";
4242
$unit = $this->unit($diff);
43-
43+
echo $unit; echo "\n";
4444
$valueOfDifference = floor($this->DiffValue($diff, $unit));
45-
45+
echo $valueOfDifference . "\n";
4646
$result = "";
4747

4848
foreach ($this->formatted as $key => $value) {

0 commit comments

Comments
 (0)