]> git.mxchange.org Git - friendica.git/blobdiff - include/dbm.php
Merge branch '1702-detect-server' of github.com:annando/friendica into 1702-detect...
[friendica.git] / include / dbm.php
index 00cb153fb1ecf482892130e994091ef0057ca035..fedc2e4fdb23881e694a7b2cbb3e218f5844614d 100644 (file)
@@ -55,7 +55,7 @@ class dbm {
         *
         * @param mixed $value Array value
         * @param string $key Array key
-        * @param boolean $add_quotation add quoatation marks for string values
+        * @param boolean $add_quotation add quotation marks for string values
         */
        private static function esc_array_callback(&$value, $key, $add_quotation) {
 
@@ -70,7 +70,7 @@ class dbm {
 
                if (is_bool($value)) {
                        $value = ($value ? 'true' : 'false');
-               } elseif (is_numeric($value)) {
+               } elseif (is_float($value) OR is_integer($value)) {
                        $value = (string)$value;
                } else {
                         $value = "'".dbesc($value)."'";
@@ -81,10 +81,34 @@ class dbm {
         * @brief Escapes a whole array
         *
         * @param mixed $arr Array with values to be escaped
-        * @param boolean $add_quotation add quoatation marks for string values
+        * @param boolean $add_quotation add quotation marks for string values
         */
        public static function esc_array(&$arr, $add_quotation = false) {
                array_walk($arr, 'self::esc_array_callback', $add_quotation);
        }
+
+       /**
+        * Checks Converts any date string into a SQL compatible date string
+        *
+        * @param string $date a date string in any format
+        * @return string SQL style date string
+        */
+       public static function date($date = 'now') {
+               $timestamp = strtotime($date);
+
+               // Workaround for 3.5.1
+               if ($timestamp < -62135596800) {
+                       return '0000-00-00 00:00:00';
+               }
+
+               // The above will be removed in 3.5.2
+               // The following will then be enabled
+               // Don't allow lower date strings as '0001-01-01 00:00:00'
+               //if ($timestamp < -62135596800) {
+               //      $timestamp = -62135596800;
+               //}
+
+               return date('Y-m-d H:i:s', $timestamp);
+       }
 }
 ?>