超全局数组及外部变量
来源:互联网 发布:安卓需要java什么基础 编辑:程序博客网 时间:2024/05/16 12:24
超全局数组:
$_POST post传值
$_GET get传值,可以在浏览器的地址栏来直接传值
注意:post发送的内容只能用post来接收,而get发送的内容只能用get接收
$_REQUEST post与get模式都可以接收到
$_SERVER 获取全局的信息
$_SERVER['HTTP_REFERER']; //上级来源
$_SERVER['HTTP_ACCEPT_LANGUAGE']; //字符集
$_SERVER['HTTP_HOST']; //当前服务器的IP地址
$_SERVER['REMOTE_ADDR']; //哪台主机访问,没有获取IP记录的,只有它.
$_SERVER["SERVER_ADMIN"]; //管理员邮箱
预定义常量:(--就是可以直接使用的常量,直接echo可以输出--)
__FILE__:当前文件在服务器的什么地址上面;
__LINE__:对应的行号;
__FUNCTION__:当前函数名;
__CLASS__:当前的类名;
__METHOD__:当前的方法;
PHP_OS: 当前操作系统的版本;
PHP_VERSION: 当前的PHP的版本;
数据类型:有时候我们只需要获取数据的类型,这时我们就需要判断类型的函数
判断变量类型:
gettype();
$a=10;
echo gettype($a);
结果为integer(整型)注意:gettype();这个函数以后尽量少用;
因为:1、double,real 类型都是属于浮点类型的,将来都会被统一成float。
2、功能强大效率低下,花费的时间比较多。
is_type(); //系列的函数
/****************************************************************************************/
is_float()类型: 判断是不是浮点型
$b=3.2;
if(is_float($b)){
echo '真';
}else{
echo '假';
}
结果为:真
/****************************************************************************************/
is_int()类型:判断是不是整型$a=99;
if(is_int($a)){
echo '真........';
}else{
echo '假!!!!!!!!';
}
//结果是:真
/****************************************************************************************/
is_bool()类型: //是不是布尔型$a=false;
if(is_bool($a)){
echo '真........';
}else{
echo '假!!!!!!!!';
}
结果为:真......./****************************************************************************************/
is_string()类型: //是不是字符串$a='abc';
if(is_string($a)){
echo '真........';
}else{
echo '假!!!!!!!!';
}
结果为真........../****************************************************************************************/
is_array()类型: //是不是数组
<?php
$a=array(1,2,3,4,5,6,);
if(is_array($a)){
echo '真........';
}else{
echo '假!!!!!!!!';
}
结果为真.........
/****************************************************************************************/
is_null()类型: //是不是空$a=null;
if(is_null($a)){
echo '真........';
}else{
echo '假!!!!!!!!';
}
结果为:真
/****************************************************************************************/
is_scalar()类型: //是不是标量:标量为布尔,字符串,浮点,字符串四种
$a=true; //注意这是布尔型,是标量
if(is_scalar($a)){
echo '真........';
}else{
echo '假!!!!!!!!';
}
结果为:真
is_object()类型: //是不是对象
is_numeric()类型: //是不是数字
is_callable()类型: //是不是函数名
自动类型转换:
发生情况:
第一, 在运算的时候
第二, 在判断的时候
当bool值与整型相运算的时候:
1,将bool值的真变为整型的1来执行
2,将bool值的假变为整型的0来执行
当bool值与浮点进行运算的时候:
1, bool值的真会变为浮点的1.0来参与运算
2, bool值的false会变为浮点的0.0
当字符串与一个整型或浮点相加的时候:
1, 会将后面的字符串全部干掉
2, 只会将前面的数值和对应的整型或浮点相运算
3, 如果字符串参与运算的时候必须要数值放在最前面。如果放到中间或者后面,会视为0来运算
NOTICE: 空与整型为浮点运算的时候结果会为0来参与运算
强制类型转换:【注意】方法 (一):1,intval floatval strval 用上这三个函数,将其变为整型或者浮点或者字符串
例子:剩余两个函数用法一样
$one=1;
$t=floatval($one);
var_dump($t);
方法 (二):2,在值前加上 (类型)$one example: (int)1.1
$a=(bool)$true;
$b=(int)$_GET['id'];
方法 (三):使用settype函数,来完成强制类型转换:1、需要向settype里面传进去一个变量,后面第二个参数直接传入对应的类型。
2、返回操作成功还是操作未成功。直接改变变量的类型和值
3、Settype(变量,’null’)等价于unset(变量)
4、空转换为字符串,会变为空字符串
强制类型转换:
如果是浮点转为对应的整型,将小数点后面全部干掉。不是四舍五入
将字符串转为bool值的时候,空字符串和字符串的’0’会变为布尔值的假
字符串变为整型,会将最前面的数值保留后面的字符串全干掉
直接用(null)(resource) 这样会报错啊,语法不正确【特殊类型不能采用这种方式来进行强制类型转换】
- 超全局数组及外部变量
- PHP数组之预定义超全局数组变量
- php超全局数组(预定义变量)
- php中预定义的超全局数组变量
- PHP超全局数组变量与魔术常量基础
- php超全局数组
- PHPH中的超全局数组
- PHP 学习笔记(一):基础教程:语法,变量,函数,数组,超全局
- PHP预定义变量9大超全局数组用法详解
- PHP学习笔记——超全局数组(预定义变量)
- Yii 超全局数组常用操作方法
- 预定义超全局数组$_GET
- php 预定义超全局数组
- PHP预定义的超全局数组
- 预定义超全局数组$_POST
- PHP超全局数组解析-SERVER
- 全局静态变量及局部静态变量
- php预定义数组:自动全局变量---超全局数组
- react-native学习(搭建环境)
- kafka spring 实例
- 文章标题
- OAI 完全搭建手册
- Java访问私有属性(不使用getter方法和反射)
- 超全局数组及外部变量
- 第十六周—C语言 项目三(点结构体)
- [Paper note] PVANET: Deep but Lightweight Neural Networks for Real-time Object Detection
- 第十五周 验证直接插入排序
- 内存对齐的规则以及作用
- 最大最小距离算法(Max-Min-diatance)
- D - Cable master POJ - 1064
- 红帽RHEL7版本RHCE认证学习及考试经历
- iOS开发之TouchId