How to define php variables: 1. Use the "define(name, value, case_insensitive)" statement; 2. Use the "$ variable name = value;" statement; 3. Use "static $ variable name = value ;" statement; 4. Use the "$$ variable name = value;" statement and so on.
The operating environment of this tutorial: windows7 system, PHP7.1 version, DELL G3 computer
php variable definition Method
Define constant define();
define(name,value,case_insensitive)
Constant can only contain scalar data (boolean, integer, float and string).
When calling a constant, you only need to simply use the name to get the value of the constant, instead of adding the "$" symbol, such as: echo CONSTANT;
Note: Constants and (global) variables are in different in the namespace. This means for example TRUE and $TRUE are different.
Normal variable $a = "hello";
Variable variable (use two dollar signs ($))
$$a = "world";
Both variables are defined:
$a's content is "hello" and $hello's content is "world".
Therefore, it can be expressed as:
echo "$a ${$a}";
or echo "$a $hello";
They both output: hello world
To use mutable variables with arrays, an ambiguity must be resolved. This is when writing $$a[1], the parser needs to know whether it wants $a[1] as a variable, or whether it wants $$a as a variable and extracts the variable with index [1] value. The syntax to solve this problem is to use ${$a[1]} for the first case and ${$a}[1] for the second case.
Static variable
static $a = 0 inside the function;
Note: Assigning it with the result of an expression in the declaration will cause parsing Errors such as static $a =3 3; (error)
Static variables only exist in the local function domain (inside the function). After the function is executed, the variable value will not be lost and can be used for recursive calls
Global variables
Global variables defined in the function body can be used outside the function. Global variables defined outside the function cannot be used inside the function body. Variables can be accessed in the global scope. Use special PHP to customize the $GLOBALS array:
For example:
$GLOBALS["b"] = $GLOBALS["a"] + $GLOBALS["b"];
A real global variable imported with the global statement in a function domain actually establishes a reference to the global variable.
global $obj;
Note: The static and global definitions of variables are implemented in an application manner
Assign a value to a variable: Pass address assignment (simple reference):
$bar = &$foo; //加&符号到将要赋值的变量前
Changing new variables will affect the original variables. This assignment operation is faster
Note: Only named variables can be assigned addresses
Note: If
$bar = &$a; $bar = &$foo;
Changing the value of $bar can only change the value of variable foo, but not the value of a (the reference has changed)
PHP super global variable $GLOBALS:
Contains a reference to a variable that is valid in the global scope of each current script. The keys of this array are the names of global variables. The $GLOBALS array exists since PHP 3.
$_SERVER: Variables are set by the web server or directly associated with the execution environment of the current script. Similar to the old $HTTP_SERVER_VARS array (still valid, but deprecated).
#$_GET: Variables submitted to the script via the HTTP GET method.
#$_POST: Variables submitted to the script via the HTTP POST method.
#$_COOKIE: Variable submitted to the script via the HTTP Cookies method.
#$_FILES : Variables submitted to the script via HTTP POST file upload.
The file upload form must have enctype="multipart/form-data"
$_ENV: Variables submitted to the script by the execution environment.
$_REQUEST: Variables submitted to the script via GET, POST and COOKIE mechanisms, so this array is not trustworthy. The presence, absence, and order of all variables contained in this array are defined according to the variables_order configuration directive in php.ini. This array does not directly emulate earlier versions of PHP 4.1.0.
Note: As of PHP 4.3.0, the file information in $_FILES no longer exists in $_REQUEST.
$_SESSION: Variable currently registered for the script session.
How to disable phpinfo():
php.ini
disable_functions = phpinfo()
Restart the web server.
Constants in php
Constants can only be defined (constant name, constant value);
Constants can only be used Contains scalar data (boolean, integer, float and string).
可以简单的通过指定其名字来取得常量的值,不要在常量前面加上 $ 符号。如果常量名是动态的,也可以用函数
constant() 来读取常量的值。用 get_defined_constants() 可以获得所有已定义的常量列表。
注: 常量和(全局)变量在不同的名字空间中。这意味着例如 TRUE 和 $TRUE 是不同的。
如果使用了一个未定义的常量,PHP 假定想要的是该常量本身的名字,如同用字符串调用它一样(CONSTANT 对应 "CONSTANT")。此时将发出一个 E_NOTICE 级的错误。参见手册中为什么 $w3sky[bar] 是错误的(除非事先用 define() 将 bar 定义为一个常量)。如果只想检查是否定义了某常量,用 defined() 函数。
常量和变量不同:
* 常量前面没有美元符号($);
* 常量只能用 define() 函数定义,而不能通过赋值语句;
* 常量可以不用理会变量范围的规则而在任何地方定义和访问;
* 常量一旦定义就不能被重新定义或者取消定义;
* 常量的值只能是标量。
定义常量
<?PHP define("CONSTANT", "Hello world."); echo CONSTANT; // outputs "Hello world." echo Constant; // outputs "Constant" and issues a notice. ?>
推荐学习:《PHP视频教程》
The above is the detailed content of What are the methods of defining variables in php. For more information, please follow other related articles on the PHP Chinese website!

The article compares ACID and BASE database models, detailing their characteristics and appropriate use cases. ACID prioritizes data integrity and consistency, suitable for financial and e-commerce applications, while BASE focuses on availability and

The article discusses securing PHP file uploads to prevent vulnerabilities like code injection. It focuses on file type validation, secure storage, and error handling to enhance application security.

Article discusses best practices for PHP input validation to enhance security, focusing on techniques like using built-in functions, whitelist approach, and server-side validation.

The article discusses strategies for implementing API rate limiting in PHP, including algorithms like Token Bucket and Leaky Bucket, and using libraries like symfony/rate-limiter. It also covers monitoring, dynamically adjusting rate limits, and hand

The article discusses the benefits of using password_hash and password_verify in PHP for securing passwords. The main argument is that these functions enhance password protection through automatic salt generation, strong hashing algorithms, and secur

The article discusses OWASP Top 10 vulnerabilities in PHP and mitigation strategies. Key issues include injection, broken authentication, and XSS, with recommended tools for monitoring and securing PHP applications.

The article discusses strategies to prevent XSS attacks in PHP, focusing on input sanitization, output encoding, and using security-enhancing libraries and frameworks.

The article discusses the use of interfaces and abstract classes in PHP, focusing on when to use each. Interfaces define a contract without implementation, suitable for unrelated classes and multiple inheritance. Abstract classes provide common funct


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Dreamweaver Mac version
Visual web development tools

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function

SublimeText3 Linux new version
SublimeText3 Linux latest version

mPDF
mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.