API16

JParameter/loadElement: Difference between revisions

From Joomla! Documentation

m clean up
m preparing for archive only
 
Line 4: Line 4:




{{subst:Description:JParameter/loadElement}}
 


===Syntax===
===Syntax===
Line 73: Line 73:




{{subst:SeeAlso:JParameter/loadElement}}
 


===Examples===
===Examples===
<CodeExamplesForm />
=== Code Examples ===
<dpl>
<dpl>
  noresultsheader=\n
  noresultsheader=\n
  category=loadElement
  category=loadElement
  category=JParameter
  category=JParameter
  category=CodeExample
  namespace=CodeExample
  category=MethodExample
  category=MethodExample
  include=*
  include=*
  format= ,,,
  format= ,,,
</dpl>
</dpl>

Latest revision as of 01:58, 25 March 2017

Description

Loads a element type.



Syntax

loadElement($type, $new=false)
Parameter Name Default Value Description
$type elementType
$new false

Returns

object

Defined in

libraries/joomla/html/parameter.php

Importing

jimport( 'joomla.html.parameter' );

Source Body

public function loadElement($type, $new = false)
{
        $signature = md5($type);

        if ((isset($this->_elements[$signature]) && !($this->_elements[$signature] instanceof __PHP_Incomplete_Class))  && $new === false) {
                return  $this->_elements[$signature];
        }

        $elementClass   =       'JElement'.$type;
        if (!class_exists($elementClass)) {
                if (isset($this->_elementPath)) {
                        $dirs = $this->_elementPath;
                } else {
                        $dirs = array();
                }

                $file = JFilterInput::getInstance()->clean(str_replace('_', DS, $type).'.php', 'path');

                jimport('joomla.filesystem.path');
                if ($elementFile = JPath::find($dirs, $file)) {
                        include_once $elementFile;
                } else {
                        $false = false;
                        return $false;
                }
        }

        if (!class_exists($elementClass)) {
                $false = false;
                return $false;
        }

        $this->_elements[$signature] = new $elementClass($this);

        return $this->_elements[$signature];
}



Examples

Code Examples