Home >Web Front-end >JS Tutorial >Commonly used system constants and system variables in thinkphp_javascript skills
----------------------------------------System variables used in templates and Constants----------------------------------------
(1) System variables : Output system variables in the template: including server, env, session, post, get, request, cookie
{$Think.server.script_name} // Output $_SERVER variable
{$Think .session.session_id|md5} // Output $_SESSION variable
{$Think.get.pageNumber} // Output $_GET variable
{$Think.cookie.name} // Output $_COOKIE variable
The above method can also be written as:
{$_SERVER.script_name} // Output $_SERVER variable
{$_SESSION.session_id|md5} // Output $_SESSION variable
{$_GET.pageNumber} // Output $_GET variable
{$_COOKIE.name} // Output $_COOKIE variable
System constants: Use $Think.const to output
Note: server, cookie, and config are not case-sensitive, but variables are case-sensitive. For example:
{$Think.server.script_name} and {$Think.SERVER.script_name} are equivalent
SESSION, COOKIE also supports the output of two-dimensional arrays
For example:
{$Think.CONFIG.user.user_name}
{$Think.session.user.user_name}
The system does not support array output of more than three dimensions.
(2) Language variable: Output the current language definition value of the project
{$Think.lang.page_error}
{$Think.const.MODULE_NAME}
Or directly use
{$Think.MODULE_NAME}
(3) Special variables: Constant defined internally by the ThinkPHP system
{$Think.version} //Version
{$Think.now} //Current time
{$Think.template|basename} //Template page
{$Think.LDELIM} / /Template label starting symbol
{$Think.RDELIM} //Template label ending symbol
(4) Configuration parameters: Output the configuration parameter value of the project
{$Think.config.db_charset}
The output value is the same as the result of C('db_charset').
----------------------------------------System constants used in Action- ---------------------------------------
THINK_PATH // ThinkPHP system directory
APP_PATH // Current project directory
APP_NAME // Current project name
MODULE_NAME // Current module name
ACTION_NAME // Current operation name
TMPL_PATH // Project template directory
LIB_PATH // Project Class library directory
CACHE_PATH // Project template cache directory
CONFIG_PATH // Project configuration file directory
LOG_PATH // Project log file directory
LANG_PATH // Project language file directory
TEMP_PATH // Project Temporary file directory
PLUGIN_PATH // Project plug-in file directory
VENDOR_PATH // Third-party library directory
DATA_PATH // Project data file directory
IS_APACHE // Whether it belongs to Apache
IS_IIS // Whether Belongs to IIS
IS_WIN //Whether it belongs to Windows environment
IS_LINUX //Whether it belongs to Linux environment
IS_FREEBSD //Whether it belongs to FreeBsd environment
NOW_TIME //Current timestamp
MEMORY_LIMIT_ON //Whether there is memory Usage restrictions
OUTPUT_GZIP_ON // Whether to enable output compression
MAGIC_QUOTES_GPC // MAGIC_QUOTES_GPC
THINK_VERSION //ThinkPHP version number
LANG_SET // Browser language
TEMPLATE_NAME //Current template name
TEMPLATE_PATH //Current template path
__ROOT__ //Website root directory address
__APP__ //Current project (entry file) address
__URL__ //Current module address
__ACTION__ //Current operation address
__SELF__ //Current URL address
TMPL_FILE_NAME //Default template name for current operation (including path)
WEB_PUBLIC_URL //Website public directory
APP_PUBLIC_URL //Project public template directory
------ ---------------------------------- System constants used in templates ---------- -----------------------------
__ROOT__ // Website root directory address
__APP__ // Current project (entry file ) Address
__URL__ // Current module address
__ACTION__ // Current operation address
__SELF__ // Current URL address
__PUBLIC__ // Website public directory
../Public (not case sensitive) ) // Project public template directory
Note: When we use constants, view the source code in the browser after the template is loaded. When we observe some URLs that use constants, we will find a phenomenon that we cannot see the IP address of the server. The address and URL start from the project name
, so why can the corresponding controller be accessed correctly? In fact, this is a joke played by the browser. When we move the mouse to the URL, right-click, copy the
URL in the source code, and paste it elsewhere, the server's IP will be displayed. , it can be seen that the server IP is included in the constant used in the URL.
----------------------------------------Custom constants---- ------------------------------------
In the project folder (eg: Home) Create common.php
in the Common folder and add the following statement:
define('XXX', XXX); //The first parameter is the constant name, and the second parameter is the constant value