< Class Phalcon\Session\Exception


Class Phalcon\Tag\Exception >


Class Phalcon\Tag

Source on GitHub

Phalcon\Tag is designed to simplify building of HTML tags. It provides a set of helpers to generate HTML in a dynamic way. This component is an abstract class that you can extend to add more helpers.


integer HTML32

integer HTML401_STRICT


integer HTML401_FRAMESET

integer HTML5

integer XHTML10_STRICT



integer XHTML11

integer XHTML20

integer XHTML5


public static EscaperInterface getEscaper (array $params)

Obtains the ‘escaper’ service if required

public static renderAttributes (unknown $code, array $attributes)

Renders parameters keeping order in their HTML attributes

public static setDI (Phalcon\DiInterface $dependencyInjector)

Sets the dependency injector container.

public static getDI ()

Internally gets the request dispatcher

public static getUrlService ()

Returns a URL service from the default DI

public static getEscaperService ()

Returns an Escaper service from the default DI

public static setAutoescape (unknown $autoescape)

Set autoescape mode in generated html

public static setDefault (string $id, string $value)

Assigns default values to generated tags by helpers


 //Assigning "peter" to "name" component
 Phalcon\Tag::setDefault("name", "peter");

 //Later in the view
 echo Phalcon\Tag::textField("name"); //Will have the value "peter" by default

public static setDefaults (array $values, [unknown $merge])

Assigns default values to generated tags by helpers


 //Assigning "peter" to "name" component
 Phalcon\Tag::setDefaults(array("name" => "peter"));

 //Later in the view
 echo Phalcon\Tag::textField("name"); //Will have the value "peter" by default

public static displayTo (string $id, string $value)

Alias of Phalcon\Tag::setDefault

public static boolean hasValue (string $name)

Check if a helper has a default value set using Phalcon\Tag::setDefault or value from _POST

public static mixed getValue (string $name, [array $params])

Every helper calls this function to check whether a component has a predefined value using Phalcon\Tag::setDefault or value from _POST

public static resetInput ()

Resets the request and internal values to avoid those fields will have any default value

public static string linkTo (array|string $parameters, [string $text], [boolean $local])

Builds a HTML A tag using framework conventions


echo Phalcon\Tag::linkTo("signup/register", "Register Here!");
echo Phalcon\Tag::linkTo(array("signup/register", "Register Here!"));
echo Phalcon\Tag::linkTo(array("signup/register", "Register Here!", "class" => "btn-primary"));
echo Phalcon\Tag::linkTo("", "Phalcon", FALSE);
echo Phalcon\Tag::linkTo(array("", "Phalcon Home", FALSE));
echo Phalcon\Tag::linkTo(array("", "Phalcon Home", "local" =>FALSE));

final protected static string _inputField (string $type, array $parameters, [boolean $asValue])

Builds generic INPUT tags

final protected static string _inputFieldChecked (string $type, array $parameters)

Builds INPUT tags that implements the checked attribute

public static string colorField (array $parameters)

Builds a HTML input[type=”color”] tag

public static string textField (array $parameters)

Builds a HTML input[type=”text”] tag


echo Phalcon\Tag::textField(array("name", "size" => 30));

public static string numericField (array $parameters)

Builds a HTML input[type=”number”] tag


echo Phalcon\Tag::numericField(array("price", "min" => "1", "max" => "5"));

public static string rangeField (array $parameters)

Builds a HTML input[type=”range”] tag

public static string emailField (array $parameters)

Builds a HTML input[type=”email”] tag


echo Phalcon\Tag::emailField("email");

public static string dateField (array $parameters)

Builds a HTML input[type=”date”] tag


echo Phalcon\Tag::dateField(array("born", "value" => "14-12-1980"))

public static string dateTimeField (array $parameters)

Builds a HTML input[type=”datetime”] tag

public static string dateTimeLocalField (array $parameters)

Builds a HTML input[type=”datetime-local”] tag

public static string monthField (array $parameters)

Builds a HTML input[type=”month”] tag

public static string timeField (array $parameters)

Builds a HTML input[type=”time”] tag

public static string weekField (array $parameters)

Builds a HTML input[type=”week”] tag

public static string passwordField (array $parameters)

Builds a HTML input[type=”password”] tag


 echo Phalcon\Tag::passwordField(array("name", "size" => 30));

public static string hiddenField (array $parameters)

Builds a HTML input[type=”hidden”] tag


 echo Phalcon\Tag::hiddenField(array("name", "value" => "mike"));

public static string fileField (array $parameters)

Builds a HTML input[type=”file”] tag


 echo Phalcon\Tag::fileField("file");

public static string searchField (array $parameters)

Builds a HTML input[type=”search”] tag

public static string telField (array $parameters)

Builds a HTML input[type=”tel”] tag

public static string urlField (array $parameters)

Builds a HTML input[type=”url”] tag

public static string checkField (array $parameters)

Builds a HTML input[type=”check”] tag


 echo Phalcon\Tag::checkField(array("terms", "value" => "Y"));

public static string radioField (array $parameters)

Builds a HTML input[type=”radio”] tag


 echo Phalcon\Tag::radioField(array("weather", "value" => "hot"))

Volt syntax:


 {{ radio_field("Save") }}

public static string imageInput (array $parameters)

Builds a HTML input[type=”image”] tag


 echo Phalcon\Tag::imageInput(array("src" => "/img/button.png"));

Volt syntax:


 {{ image_input("src": "/img/button.png") }}

public static string submitButton (array $parameters)

Builds a HTML input[type=”submit”] tag


 echo Phalcon\Tag::submitButton("Save")

Volt syntax:


 {{ submit_button("Save") }}

public static string selectStatic (array $parameters, [array $data])

Builds a HTML SELECT tag using a PHP array for options


echo Phalcon\Tag::selectStatic("status", array("A" => "Active", "I" => "Inactive"))

public static string select (array $parameters, [array $data])

Builds a HTML SELECT tag using a Phalcon\Mvc\Model resultset as options


echo Phalcon\Tag::select(array(
    Robots::find("type = "mechanical""),
    "using" => array("id", "name")

Volt syntax:


 {{ select("robotId", robots, "using": ["id", "name"]) }}

public static string textArea (array $parameters)

Builds a HTML TEXTAREA tag


 echo Phalcon\Tag::textArea(array("comments", "cols" => 10, "rows" => 4))

Volt syntax:


 {{ text_area("comments", "cols": 10, "rows": 4) }}

public static string form (array $parameters)

Builds a HTML FORM tag


 echo Phalcon\Tag::form("posts/save");
 echo Phalcon\Tag::form(array("posts/save", "method" => "post"));

Volt syntax:


 {{ form("posts/save") }}
 {{ form("posts/save", "method": "post") }}

public static endForm ()

Builds a HTML close FORM tag

public static setTitle (unknown $title)

Set the title of view content


 Phalcon\Tag::setTitle("Welcome to my Page");

public static setTitleSeparator (unknown $titleSeparator)

Set the title separator of view content



public static appendTitle (unknown $title)

Appends a text to current document title

public static prependTitle (unknown $title)

Prepends a text to current document title

public static getTitle ([unknown $tags])

Gets the current document title


    echo Phalcon\Tag::getTitle();

    {{ get_title() }}

public static getTitleSeparator ()

Gets the current document title separator


         echo Phalcon\Tag::getTitleSeparator();

         {{ get_title_separator() }}

public static string stylesheetLink ([array $parameters], [boolean $local])

Builds a LINK[rel=”stylesheet”] tag


    echo Phalcon\Tag::stylesheetLink("", false);
    echo Phalcon\Tag::stylesheetLink("css/style.css");

Volt Syntax:


    {{ stylesheet_link("", false) }}
    {{ stylesheet_link("css/style.css") }}

public static string javascriptInclude ([array $parameters], [boolean $local])

Builds a SCRIPT[type=”javascript”] tag


         echo Phalcon\Tag::javascriptInclude("", false);
         echo Phalcon\Tag::javascriptInclude("javascript/jquery.js");

Volt syntax:


 {{ javascript_include("", false) }}
 {{ javascript_include("javascript/jquery.js") }}

public static string image ([array $parameters], [boolean $local])

Builds HTML IMG tags


         echo Phalcon\Tag::image("img/bg.png");
         echo Phalcon\Tag::image(array("img/photo.jpg", "alt" => "Some Photo"));

Volt Syntax:


         {{ image("img/bg.png") }}
         {{ image("img/photo.jpg", "alt": "Some Photo") }}
         {{ image("", false) }}

public static string friendlyTitle (string $text, [string $separator], [boolean $lowercase], [mixed $replace])

Converts texts into URL-friendly titles


 echo Phalcon\Tag::friendlyTitle("These are big important news", "-")

public static setDocType (unknown $doctype)

Set the document type of content

public static getDocType ()

Get the document type declaration of content

public static string tagHtml (string $tagName, [array $parameters], [boolean $selfClose], [boolean $onlyStart], [boolean $useEol])

Builds a HTML tag


        echo Phalcon\Tag::tagHtml(name, parameters, selfClose, onlyStart, eol);

public static tagHtmlClose (unknown $tagName, [unknown $useEol])

Builds a HTML tag closing tag


        echo Phalcon\Tag::tagHtmlClose("script", true)
Follow along: