СИНТАКСИС
об'єкт JAuthorization getACL ()
$ Acl = JFactory :: getACL ();
Повертає посилання на глобальний об'єкт докладання. Тип об'єкта, що повертається - JApplication.
Object JApplication getApplication ($ client, $ attribs, $ prefix)
де:
$ client
Тип даних - рядок.
Назва, під яким відома клієнтська частина програми. Наприклад, Joomla поставляється з трьома клієнтами програми: сайт, адміністративна частина і установка. За замовчуванням - null.
$ attribs
Тип даних - масив
Асоціативний масив атрибутів, які будуть прийняті додатком. За замовчуванням - масив.
$ prefix
Тип даних - рядок
Префікс, який додається до імені клієнта, щоб сформувати назву класу додатка.
За замовчуванням - "J".
Цей метод найчастіше використовується для того щоб отримати посилання на глобальний об'єкт докладання. У цьому випадку метод викликається без аргументів. У цьому прикладі ми отримуємо об'єкт докладання, щоб подивитися в якій частині сайту (користувальницької або адміністративної) був запущений код.
$ App = JFactory :: getApplication ();
if ($ app-> isSite ()) echo 'Client is site';
if ($ app-> isAdmin ()) echo 'Client is administrator';
Повертає посилання на глобальний об'єкт кеш. Тип об'єкта, що повертається - JCache.
Об'єкт JCache getCache ($ group, $ handler, $ storage)
$ group
Тип значення - рядок.
Назва групи кеша. Дозволяє розділити групи кешу, шляхом призначення їм унікальних імен.
Тип значення рядок.
Тип значення - рядок.
У цьому прикладі проведений простий виклик кеша. Ці кеші є результатом 'expensiveMethod', так що для даного набору аргументів результат обчислюється тільки один раз.
// Define a class to contain the computationally-expensive method.
class expensiveClass function expensiveMethod ($ signature) static $ instances;
if (! isset ($ instances)) $ instances = array ();
if (empty ($ instances [$ signature])) // Something that is resource-intensive to produce, here simulated
// by calculating the MD5 hash of the signature.
$ Instances [$ signature] = md5 ($ signature);
echo 'Cache miss';
> Else echo 'Cache hit';
>
return $ instances [$ signature];
>
>
// Create a cache instance.
$ Cache = JFactory :: getCache ( 'myCache');
// Specify the class and method that will produce the data to be cached.
$ Method = array ( 'expensiveClass', 'expensiveMethod');
// Now execute some code that will use the cache.
echo '. '. $ Cache-> get ($ method, 'abc'). "";
echo '. '. $ Cache-> get ($ method, 'efg'). "";
echo '. '. $ Cache-> get ($ method, 'abc'). "";
echo '. '. $ Cache-> get ($ method, 'hij'). "";
echo '. '. $ Cache-> get ($ method, 'klm'). "";
echo '. '. $ Cache-> get ($ method, 'hij'). "";
Результат виконання прикладу:
Cache miss. 900150983cd24fb0d6963f7d28e17f72
Cache miss. 7d09898e18511cf7c0c1815d07728d23
Cache hit. 900150983cd24fb0d6963f7d28e17f72
Cache miss. 857c4402ad934005eae4638a93812bf7
Cache miss. 3491f0dc1059a35bb1681b3bd67cb0d5
Cache hit. 857c4402ad934005eae4638a93812bf7
Повертає посилання на глобальний об'єкт конфігурація. Тип значення, що повертається - JRegistry.
Об'єкт JRegistry getConfig ($ file, $ type)
Тип значення - рядок.
Шлях до конфігураційного файлу. Якщо null тоді шлях - joomla / libraries / joomla / config. php. За замовчуванням null.
Тип значення - рядок.
Тип конфігураційного файлу. За замовчуванням "PHP".
Це метод використовується для доступу до глобальних конфігураційним змінним. У цьому прикладі отримуємо ім'я сайту.
$ Config = JFactory :: getConfig ();
echo 'Site name is'. $ Config-> getValue ( 'config. Sitename');
Повертає посилання на глобльний об'єкт дата. Тип возвращаемго значення - JDate.
Об'єкт JDate getDate ($ time, $ tzOffset)
Тип значення - рядок або число.
Використовувати дату або час. Щоб отримати поточну дату або час треба використовувати "now". Використовуваний формат буде залежати від поточної мови і від того переписаний чи за замовчуванням Григоріанський календар. Якщо тип значення є числом тоді дата інтерпрітіруется в форматі Unix. За замовчуванням "now".
Тип значення - число.
Зрушення часового поясу застосовується до дати і часу в $ time. Він вираховується з $ time так щоб обчислення дати / часу, збереженого в об'єкті дата було в форматі UT. За умовчанням 0.
ПРИКЛАД 1
У цьому прикладі виводяться поточні дата і час в локальному форматі.
$ Date = JFactory :: getDate ();
echo 'Current date and time is:'. $ Date-> toFormat (). "";
У цьому прикладі дата виводитися в форматі RFC2822, відповідному для більшості інтернет протоколів. Відзначимо, що дата повинна бути визначена в локальному форматі, інакше парсер не зможе її розпізнати.
У цьому прикладі дата визначена в форматі UNIX і в виводитися в форматі ISO 8601.
$ Date = JFactory :: getDate (1332362632);
echo 'Date and time is:'. $ Date-> toISO8601 (). "";
Повертає посилання на глобальний об'єкт база даних. Тип об'єкта, що повертається - JDatabase.
Об'єкт JDatabase getDBO ()
У цьому прикладі отримуємо префікс бази даних.
$ Db = JFactory :: getDBO ();
echo "Database prefix is.". $ Db-> getPrefix ();
Database prefix is. jos_
Повертає посилання на глобальний об'єкт документ. Тип значення, що повертається - JDocument.
Об'єкт JDocument getDocument ()
В цей прикладі отримуємо заголовок поточної сторінки.
$ Doc = JFactory :: getDocument ();
echo 'Current title is:'. $ Doc-> getTitle ();
Об'єкт JEditor getEditor ($ editor)
Тип значення - рядок.
$ Editor = JFactory :: getEditor ();
$ Params = array ( 'smilies' => '0',
'Style' => '1',
'Layer' => '0',
'Table' => '0',
'Clear_entities' => '0'
);
echo $ editor-> display ( 'desc', '', '400', '400', '20', '20', false, $ params);
Щоб зберегти HTML код, ви повинні явно запросити його з JRequest-Object інакше всі ваші HTML коди зникнуть.
/ * The store-procedure in your model might then look like this * /
[. ]
function store ()
$ Row = $ This-> getTable ();
$ Data = JRequest :: get ( 'post');
/ * Get proper HTML-code for your HTML-encoded field now by using JREQUEST_ALLOWHTML * /
$ Data [ 'yourfieldname'] = JRequest :: getVar ( 'yourfieldname', '', 'post', 'string', JREQUEST_ALLOWHTML);
/ * Now proceed as suggested * /
$ Row-> bind ($ data);
[. ]
$ Row-> check ();
[. ]
$ Row-> store ();
[. ]
>
[. ]
Повертає посилання на глобальний об'єкт мову. Тип значення, що повертається - JLanguage.
Об'єкт JLanguage getDocument ()
Наступний код визначає назву поточної мови.
$ Lang = JFactory :: getLanguage ();
echo 'Current language is:'. $ Lang-> getName ();
Повертає посилання на глобальний об'єкт мову. Тип значення, що повертається - JMail.
Об'єкт JLanguage getMailer ()
$ Mail = JFactory :: getMailer ();
$ Config = JFactory :: getConfig ();
$ Mail-> addRecipient ($ config-> getValue ( 'config. Mailfrom'));
$ Mail-> setSubject ( 'Test message');
$ Mail-> setBody ( 'This is an example email to test the Joomla! JFactory :: getMailer () method. Please ignore it');
if ($ mail-> Send ()) echo "Mail sent successfully.";
> Else echo "An error occurred. Mail was not sent.";
>
Повертає посилання на глобальний об'єкт сесія. Тип значення, що повертається - JSession.
Об'єкт JSession getSession ($ options)
Тип даних - масив.
Масив опцій. Можливі опції наведені нижче. За замовчуванням - масив.
Name - назва сесії;
id - унікальний ID сесії;
expire - дата і час закінчення терміну дії сесії;
security - список опцій безпеки розділених комами.
Наступний код отримує поточну сесію і встановлює значення "helloworld" для змінної "myvar"
$ Session = JFactory :: getSession ();
$ Session-> set ( 'myvar', 'helloworld');
Мінлива сесії може бути отримана більш легким способом
$ Session = JFactory :: getSession ();
echo 'Session variable myvar has value:'. $ Session-> get ( 'myvar', 'empty');
Повертає посилання на глобальний об'єкт шаблон. Тип значення, що повертається - JTemplate.
Об'єкт JTemplate getTemplate ()
У цьому прикладі отримуємо глобальний об'єкт шаблон.
$ Template = JFactory :: getTemplate ();
Статичний метод, який повертає посилання на глобальний об'єкт JURI. Тип значення, що повертається - JURI. Глобальний об'єкт URI є URI відповідає за відображення поточної сторінки.
У цьому прикладі ми отримуємо URI як рядок
$ U = JFactory :: getURI ();
echo 'URI is'. $ U-> toString (). "";
Повертає посилання на глобальний об'єкт користувач. Тип значення, що повертається - JUser
Об'єкт JUser getUser ($ id)
Тип значення - число або рядок.
Якщо передана рядок, тоді вона буде інтерпретована як ім'я користувача і сконвертовано в id автоматично. Якщо аргумент пропущено або передано значення null тоді буде завантажений поточний користувач. За замовчуванням значення - null.
$ User = JFactory :: getUser ();
if (! $ user-> guest) echo 'You are logged in as:
';
echo 'User name:'. $ User-> username. '
';
echo 'Real name:'. $ User-> name. '
';
echo 'User ID. '. $ User-> id. '
';
>
У цьому прикладі показана інформація про користувача з ім'ям 'joebloggs'. При цьому не важливо чи є він поточним.
$ User = JFactory :: getUser ( 'joebloggs');
if ($ user-> id == 0) echo 'There is no user joebloggs registered on this site.
';
> Else echo 'User name:'. $ User-> username. '
';
echo 'Real name:'. $ User-> name. '
';
echo 'User ID. '. $ User-> id. '
';
>
У цьому прикладі визначається, чи має поточний користувач права на редагування.
$ User = JFactory :: getUser ();
if ($ user-> authorize ( 'com_content', 'edit', 'content', 'all')) echo 'Editing permitted.';
> Else echo 'Editing not permitted.';
>
Повертає посилання на глобальний об'єкт XML парсер. Тип значення, що повертається залежить від типу запитаного парсеру
Об'єкт getXMLParser ($$ type, $ options)
Тип даних - рядок.
Тип XML парсеру. Список доступних опцій наведено нижче. За замовчуванням "DOM".
Тип даних - масив.
Масив опцій, які можуть допомогти конфігурувати парсер. Він залежить від обраного парсеру.
Rss - SimplePie парсер для стрічки новин. Для роботи цього парсера в масив опцій повинен бути переданий URL ($ options [ 'rssUrl']). Щоб визначити час життя кешу в масив опцій треба передати таке значення: $ options [ 'cache_time'];
atom - те ж саме що rss;
simple - JSimpleXML парсер;
dom - Domit парсер. Якщо опція "lite" ($ options [ 'lite']) буде встановлена true, то буде використаний Domit lite парсер.
У цьому прикладі JSimpleXML парсер використовується для того щоб отримати зумовлені позиції модулів в шаблоні Milky Way
$ Xml = JFactory :: getXMLParser ( 'simple');
$ Xml-> loadFile ( 'templates / rhuk_milkyway / templateDetails. Xml');
$ Positions = $ Xml-> document-> getElementByPath ( 'positions');
foreach ($ positions-> children () as $ position) echo $ position-> data (). "";
>
Breadcrumb
left
right
top
user1
user2
user3
user4
footer
debug
syndicate