| API | Package | Subpackage | Class | Reference | Last reviewed | Doc status |
|---|---|---|---|---|---|---|
Home |
Joomla.Framework |
Application |
JView |
JView |
Never | Work in Progress |
JView is the base class for a Joomla! view. This class is designed to be used within the Joomla! MVC framework, although it can be used outside of it as well. It contains holding methods for displaying presentation data.
| Method | Description |
|---|---|
__construct | Constructor for the JView class. Setups up paths and configuration values. |
addEscape | Adds to the callbacks used when calling JView::escape(). |
addHelperPath | Adds to the stack of helper script paths in LIFO order. |
addTemplatePath | Adds to the stack of view script paths in LIFO order. |
assign | Assigns variables to the view script via differing strategies.<p>This method is overloaded; you can assign all the properties of an object, an associative array, or a single value by name.</p><p>You are not allowed to set variables that begin with an underscore; these are either private properties for JView or private variables within the template script itself.</p><p><div class=”src-code”><ol><pre><li><div class="src-line"> <span class="src-var">$view </span>=<span class="src-sym">& </span><span class="src-key">new </span><span class="src-id"><a href="../../Joomla-Framework/Application/JView.html">JView</a></span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> <li><div class="src-line"> </div></li> <li><div class="src-line"> <span class="src-comm">// assign directly</span></div></li> <li><div class="src-line"> <span class="src-var">$view</span><span class="src-sym">-></span><span class="src-id">var1 </span>= <span class="src-str">'something'</span><span class="src-sym">;</span></div></li> <li><div class="src-line"> <span class="src-var">$view</span><span class="src-sym">-></span><span class="src-id">var2 </span>= <span class="src-str">'else'</span><span class="src-sym">;</span></div></li> <li><div class="src-line"> </div></li> <li><div class="src-line"> <span class="src-comm">// assign by name and value</span></div></li> <li><div class="src-line"> <span class="src-var">$view</span><span class="src-sym">-></span><a href="../../Joomla-Framework/Application/JView.html#methodassign">assign</a><span class="src-sym">(</span><span class="src-str">'var1'</span><span class="src-sym">, </span><span class="src-str">'something'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> <li><div class="src-line"> <span class="src-var">$view</span><span class="src-sym">-></span><a href="../../Joomla-Framework/Application/JView.html#methodassign">assign</a><span class="src-sym">(</span><span class="src-str">'var2'</span><span class="src-sym">, </span><span class="src-str">'else'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> <li><div class="src-line"> </div></li> <li><div class="src-line"> <span class="src-comm">// assign by assoc-array</span></div></li> <li><div class="src-line"> <span class="src-var">$ary </span>= <span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'var1' </span>=> <span class="src-str">'something'</span><span class="src-sym">, </span><span class="src-str">'var2' </span>=> <span class="src-str">'else'</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> <li><div class="src-line"> <span class="src-var">$view</span><span class="src-sym">-></span><a href="../../Joomla-Framework/Application/JView.html#methodassign">assign</a><span class="src-sym">(</span><span class="src-var">$obj</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> <li><div class="src-line"> </div></li> <li><div class="src-line"> <span class="src-comm">// assign by object</span></div></li> <li><div class="src-line"> <span class="src-var">$obj </span>= <span class="src-key">new </span><span class="src-id">stdClass</span><span class="src-sym">;</span></div></li> <li><div class="src-line"> <span class="src-var">$obj</span><span class="src-sym">-></span><span class="src-id">var1 </span>= <span class="src-str">'something'</span><span class="src-sym">;</span></div></li> <li><div class="src-line"> <span class="src-var">$obj</span><span class="src-sym">-></span><span class="src-id">var2 </span>= <span class="src-str">'else'</span><span class="src-sym">;</span></div></li> <li><div class="src-line"> <span class="src-var">$view</span><span class="src-sym">-></span><a href="../../Joomla-Framework/Application/JView.html#methodassign">assign</a><span class="src-sym">(</span><span class="src-var">$obj</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> </pre> </ol></div></p> |
assignRef | Assign variable for the view (by reference).<p>You are not allowed to set variables that begin with an underscore; these are either private properties for JView or private variables within the template script itself.</p><p><div class=”src-code”><ol><pre><li><div class="src-line"> <span class="src-var">$view </span>= <span class="src-key">new </span><span class="src-id"><a href="../../Joomla-Framework/Application/JView.html">JView</a></span><span class="src-sym">(</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> <li><div class="src-line"> </div></li> <li><div class="src-line"> <span class="src-comm">// assign by name and value</span></div></li> <li><div class="src-line"> <span class="src-var">$view</span><span class="src-sym">-></span><a href="../../Joomla-Framework/Application/JView.html#methodassignRef">assignRef</a><span class="src-sym">(</span><span class="src-str">'var1'</span><span class="src-sym">, </span><span class="src-var">$ref</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> <li><div class="src-line"> </div></li> <li><div class="src-line"> <span class="src-comm">// assign directly</span></div></li> <li><div class="src-line"> <span class="src-var">$view</span><span class="src-sym">-></span><span class="src-id">ref </span>=<span class="src-sym">& </span><span class="src-var">$var1</span><span class="src-sym">;</span></div></li> </pre> </ol></div></p> |
display | Execute and display a template script. |
escape | Applies escaping to a value.<p>You can override the predefined escaping callbacks by passing added parameters as replacement callbacks.</p><p><div class=”src-code”><ol><pre><li><div class="src-line"> <span class="src-comm">// use predefined callbacks</span></div></li> <li><div class="src-line"> <span class="src-var">$result </span>= <span class="src-var">$view</span><span class="src-sym">-></span><a href="../../Joomla-Framework/Application/JView.html#methodescape">escape</a><span class="src-sym">(</span><span class="src-var">$value</span><span class="src-sym">)</span><span class="src-sym">;</span></div></li> <li><div class="src-line"> </div></li> <li><div class="src-line"> <span class="src-comm">// use replacement callbacks</span></div></li> <li><div class="src-line"> <span class="src-var">$result </span>= <span class="src-var">$view</span><span class="src-sym">-></span><a href="../../Joomla-Framework/Application/JView.html#methodescape">escape</a><span class="src-sym">(</span></div></li> <li><div class="src-line"> <span class="src-var">$value</span><span class="src-sym">,</span></div></li> <li><div class="src-line"> <span class="src-str">'stripslashes'</span><span class="src-sym">,</span></div></li> <li><div class="src-line"> <span class="src-str">'htmlspecialchars'</span><span class="src-sym">,</span></div></li> <li><div class="src-line"> <span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'StaticClass'</span><span class="src-sym">, </span><span class="src-str">'method'</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> <li><div class="src-line"> <span class="src-key">array</span><span class="src-sym">(</span><span class="src-var">$object</span><span class="src-sym">, </span><span class="src-var">$method</span><span class="src-sym">)</span></div></li> <li><div class="src-line"> <span class="src-sym">)</span><span class="src-sym">;</span></div></li> </pre> </ol></div></p> |
get | Method to get data from a registered model |
getLayout | Get the layout. |
getModel | Method to get the model object |
getName | Method to get the view name<p>The model name by default parsed using the classname, or it can be set by passing a $config[’name’] in the class constructor</p> |
loadHelper | Load a helper file |
loadTemplate | Load a template file – first look in the templates folder for an override |
setEscape | Clears then sets the callbacks to use when calling JView::escape().<p>Each parameter passed to this function is treated as a separate callback. For example:</p><p><div class=”src-code”><ol><pre><li><div class="src-line"> <span class="src-var">$view</span><span class="src-sym">-></span><a href="../../Joomla-Framework/Application/JView.html#methodsetEscape">setEscape</a><span class="src-sym">(</span></div></li> <li><div class="src-line"> <span class="src-str">'stripslashes'</span><span class="src-sym">,</span></div></li> <li><div class="src-line"> <span class="src-str">'htmlspecialchars'</span><span class="src-sym">,</span></div></li> <li><div class="src-line"> <span class="src-key">array</span><span class="src-sym">(</span><span class="src-str">'StaticClass'</span><span class="src-sym">, </span><span class="src-str">'method'</span><span class="src-sym">)</span><span class="src-sym">,</span></div></li> <li><div class="src-line"> <span class="src-key">array</span><span class="src-sym">(</span><span class="src-var">$object</span><span class="src-sym">, </span><span class="src-var">$method</span><span class="src-sym">)</span></div></li> <li><div class="src-line"> <span class="src-sym">)</span><span class="src-sym">;</span></div></li> </pre> </ol></div></p> |
setLayout | Sets the layout name to use |
setLayoutExt | Allows a different extension for the layout files to be used |
setModel | Method to add a model to the view. We support a multiple model single<p>view system by which models are referenced by classname. A caveat to the classname referencing is that any classname prepended by JModel will be referenced by the name without JModel, eg. JModelCategory is just Category.</p> |
_addPath | Adds to the search path for templates and resources. |
_setPath | Sets an entire array of search paths for templates or resources. |