| 
									
										
										
										
											2018-04-11 19:49:35 +02:00
										 |  |  | <?php | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | function FindObjectInArrayByPropertyValue($array, $propertyName, $propertyValue) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	foreach($array as $object) | 
					
						
							|  |  |  | 	{ | 
					
						
							|  |  |  | 		if($object->{$propertyName} == $propertyValue) | 
					
						
							|  |  |  | 		{ | 
					
						
							|  |  |  | 			return $object; | 
					
						
							|  |  |  | 		} | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	return null; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | function FindAllObjectsInArrayByPropertyValue($array, $propertyName, $propertyValue, $operator = '==') | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	$returnArray = array(); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	foreach($array as $object) | 
					
						
							|  |  |  | 	{ | 
					
						
							|  |  |  | 		switch($operator) | 
					
						
							|  |  |  | 		{ | 
					
						
							|  |  |  | 			case '==': | 
					
						
							|  |  |  | 				if($object->{$propertyName} == $propertyValue) | 
					
						
							|  |  |  | 				{ | 
					
						
							|  |  |  | 					$returnArray[] = $object; | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				break; | 
					
						
							|  |  |  | 			case '>': | 
					
						
							|  |  |  | 				if($object->{$propertyName} > $propertyValue) | 
					
						
							|  |  |  | 				{ | 
					
						
							|  |  |  | 					$returnArray[] = $object; | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				break; | 
					
						
							|  |  |  | 			case '<': | 
					
						
							|  |  |  | 				if($object->{$propertyName} < $propertyValue) | 
					
						
							|  |  |  | 				{ | 
					
						
							|  |  |  | 					$returnArray[] = $object; | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				break; | 
					
						
							|  |  |  | 		} | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	return $returnArray; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-05-12 15:30:13 +02:00
										 |  |  | function FindAllItemsInArrayByValue($array, $value, $operator = '==') | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	$returnArray = array(); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	foreach($array as $item) | 
					
						
							|  |  |  | 	{ | 
					
						
							|  |  |  | 		switch($operator) | 
					
						
							|  |  |  | 		{ | 
					
						
							|  |  |  | 			case '==': | 
					
						
							|  |  |  | 				if($item == $value) | 
					
						
							|  |  |  | 				{ | 
					
						
							|  |  |  | 					$returnArray[] = $item; | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				break; | 
					
						
							|  |  |  | 			case '>': | 
					
						
							|  |  |  | 				if($item > $value) | 
					
						
							|  |  |  | 				{ | 
					
						
							|  |  |  | 					$returnArray[] = $item; | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				break; | 
					
						
							|  |  |  | 			case '<': | 
					
						
							|  |  |  | 				if($item < $value) | 
					
						
							|  |  |  | 				{ | 
					
						
							|  |  |  | 					$returnArray[] = $item; | 
					
						
							|  |  |  | 				} | 
					
						
							|  |  |  | 				break; | 
					
						
							|  |  |  | 		} | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	return $returnArray; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-04-11 19:49:35 +02:00
										 |  |  | function SumArrayValue($array, $propertyName) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	$sum = 0; | 
					
						
							|  |  |  | 	foreach($array as $object) | 
					
						
							|  |  |  | 	{ | 
					
						
							|  |  |  | 		$sum += $object->{$propertyName}; | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	return $sum; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | function GetClassConstants($className) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	$r = new ReflectionClass($className); | 
					
						
							|  |  |  | 	return $r->getConstants(); | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2018-04-19 20:44:49 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | function RandomString($length, $allowedChars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ') | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	$randomString = ''; | 
					
						
							|  |  |  | 	for ($i = 0; $i < $length; $i++) | 
					
						
							|  |  |  | 	{ | 
					
						
							|  |  |  | 		$randomString .= $allowedChars[rand(0, strlen($allowedChars) - 1)]; | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 	return $randomString; | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2018-04-22 19:47:46 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | function IsAssociativeArray(array $array) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	$keys = array_keys($array); | 
					
						
							|  |  |  | 	return array_keys($keys) !== $keys; | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2018-07-11 19:43:05 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | function IsIsoDate($dateString) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	$d = DateTime::createFromFormat('Y-m-d', $dateString); | 
					
						
							|  |  |  | 	return $d && $d->format('Y-m-d') === $dateString; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | function IsIsoDateTime($dateTimeString) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	$d = DateTime::createFromFormat('Y-m-d H:i:s', $dateTimeString); | 
					
						
							|  |  |  | 	return $d && $d->format('Y-m-d H:i:s') === $dateTimeString; | 
					
						
							|  |  |  | } | 
					
						
							| 
									
										
										
										
											2018-07-12 19:12:31 +02:00
										 |  |  | 
 | 
					
						
							|  |  |  | function BoolToString(bool $bool) | 
					
						
							|  |  |  | { | 
					
						
							|  |  |  | 	return $bool ? 'true' : 'false'; | 
					
						
							|  |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-07-12 22:23:00 +02:00
										 |  |  | function Setting(string $name, $value) | 
					
						
							| 
									
										
										
										
											2018-07-12 19:12:31 +02:00
										 |  |  | { | 
					
						
							|  |  |  | 	if (!defined($name)) | 
					
						
							|  |  |  | 	{ | 
					
						
							|  |  |  | 		define($name, $value); | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | } |