数组换位置一.介绍 PHP(外文名:PHP: Hyperte(2)
一个变量的名是另一个变量。
<?php
$v1 = ‘v2‘;
$v2 = 10;
echo $$v1;//10
$GLOBALS — 引用全局作用域中可用的全部变量
$_SERVER — 服务器和执行环境信息
$_GET — HTTP GET 变量
$_POST — HTTP POST 变量
$_FILES — HTTP 文件上传变量
$_REQUEST — HTTP Request 变量
$_SESSION — Session 变量
$_ENV — 环境变量
$_COOKIE — HTTP Cookies
$php_errormsg — 前一个错误信息
$HTTP_RAW_POST_DATA — 原生POST数据
$http_response_header — HTTP 响应头
$argc — 传递给脚本的参数数目
$argv — 传递给脚本的参数数组
PHP 中的许多预定义变量都是“超全局的”,这意味着它们在一个脚本的全部作用域中都可用。在函数或方法中无需执行 global $variable; 就可以访问它们。
$GLOBALS
$_SERVER
$_GET
$_POST
$_FILES
$_COOKIE
$_SESSION
$_REQUEST
$_ENV
序列化就是将一个变量的数据转换为字符串(并不是类型转换),目的是将该字符串进行存储和传输。
serialize:序列化
unserialize:反序列化
<?php
$arr = array(‘z‘=>1,‘x‘=>2,‘c‘=>3,‘zxc‘);
var_dump($s = serialize($arr));//序列化
file_put_contents(‘./test_serialize‘, $s);
var_dump(unserialize(file_get_contents(‘./test_serialize‘)));//反序列化
常量是一个简单值的标识符(名字),在脚本执行期间该值不能改变。
传统上常量标识符总是大写的。
使用define()函数定义
使用const语法定义
使用 const 关键字定义常量必须处于最顶端的作用区域,因为用此方法是在编译时定义的。这就意味着不能在函数内,循环内以及 if 语句之内用 const 来定义常量。
const和define的区别?
使用const使得代码简单易读,const本身就是一个语言结构,而define是一个函数。另外const在编译时要比define快很多。
const用于类成员变量的定义,一经定义,不可修改。define不可以用于类成员变量的定义,可用于全局常量。
const可在类中使用,define不能
const不能再条件语句中定义常量,define可以
<?php
define(‘CONST1‘, 123);
const CONST2 = 456;
直接使用
使用constant()函数
<?php
define(‘CONST1‘, 123);
echo CONST1;
echo constant(‘CONST1‘);//constant(CONST1)->constant(‘123‘);
defined()返回布尔值
<?php
define(‘CONST1‘, 123);
echo ‘CONST1---‘.defined(‘CONST1‘);
echo ‘CONST2---‘.defined(‘CONST2‘);
内核预定义常量:是在PHP的内核中就定义好了的常量。区分大小写。
估计更差