API16

Difference between revisions of "JFactory/getDate"

From Joomla! Documentation

< API16:JFactory
(New page: ===Description=== Return the JDate object <span class="editsection" style="font-size:76%;"> <nowiki>[</nowiki>Edit Descripton<nowiki>]</nowiki> </spa...)
(No difference)

Revision as of 17:47, 22 March 2010

The "API16" namespace is an archived namespace. This page contains information for a Joomla! version which is no longer supported. It exists only as a historical reference, it will not be improved and its content may be incomplete and/or contain broken links.

Description[edit]

Return the JDate object

[Edit Descripton]

Template:Description:JFactory/getDate

Syntax[edit]

static getDate($time= 'now', $tzOffset=null)
Parameter Name Default Value Description
$time 'now' $time The initial time for the object
$tzOffset null $tzOffset The timezone offset.

Returns[edit]

object

Defined in[edit]

libraries/joomla/factory.php

Importing[edit]

jimport( 'joomla.factory' );

Source Body[edit]

public static function getDate($time = 'now', $tzOffset = null)
{
        jimport('joomla.utilities.date');
        static $instances;
        static $classname;
        static $mainLocale;

        if (!isset($instances)) {
                $instances = array();
        }

        $language = &JFactory::getLanguage();
        $locale = $language->getTag();

        if (!isset($classname) || $locale != $mainLocale) {
                //Store the locale for future reference
                $mainLocale = $locale;
                $localePath = JPATH_ROOT . DS . 'language' . DS . $mainLocale . DS . $mainLocale . '.date.php';
                if ($mainLocale !== false && file_exists($localePath)) {
                        $classname = 'JDate'.str_replace('-', '_', $mainLocale);
                        JLoader::register($classname,  $localePath);
                        if (!class_exists($classname)) {
                                //Something went wrong.  The file exists, but the class does not, default to JDate
                                $classname = 'JDate';
                        }
                } else {
                        //No file, so default to JDate
                        $classname = 'JDate';
                }
        }
        $key = $time . '-' . $tzOffset;

        //              if (!isset($instances[$classname][$key])) {
        $tmp = new $classname($time, $tzOffset);
        //We need to serialize to break the reference
        //                      $instances[$classname][$key] = serialize($tmp);
        //                      unset($tmp);
        //              }

        //              $date = unserialize($instances[$classname][$key]);
        //              return $date;
        return $tmp;
}

[Edit See Also] Template:SeeAlso:JFactory/getDate

Examples[edit]

<CodeExamplesForm />