PHP基本语法(二)
【重点,哪些情况我们会将其它类型的值视为bool值的假:】
1. 整型的0会视为bool值的假来执行,任何非0的整型都视为真
2. 浮点的0.0不论后面有多少个0都视为假0.000000000,后面只要有一个非0值就为真
3. 字浮串的’0’,视为假,其他值全视为真来处理
4. 空字符串视为bool值的假‘’,只要中间有个空格都算真!
5. 空视为假处理(注意)
6. 数组当中一个东西都没有,就是空数组。就视为假来处理。当中只要有一个值,这个值即使为假或者空都视为真
7. 未声明成功的资源
#bool类型
$bool=true; /* 不要加引号*/
$bool=false; 1.整形 $bool=0; 假 非空为真
2.布尔型 $bool=null; 假 为空
3.浮点型 $bool=‘0’ 假
$bool=‘0.0’ 真 /*这个特殊*/
4.字符型 $bool=''; 假
$bool=""; 假
$bool=' '; 真 /*注意空格,这个特殊*/
$bool=" "; 真 /*注意空格,这个特殊*/
5.空数组 $bool=array(); 假
对象 $bool=object(); 假
资源 $bool=resource(); 假
判断空的函数:(重点)
Empty(只传一个变量),当传进去的变量为0,为false,为空,(只要为假的情况就返回真)(是否为空)
Isset(变量1,…,变量n) 可以传入一个或多个变量,只要当中有一个变为null,就返回false(是否被设置)
变量的引用:
变量的引用问题:
<?php
$a=60; $b=&$a;
//这个真正的意思是:把$a和$b同时指向同一个地方,以后无论换a的值还是b的值,(说白了,就是给$b起一个小名,都是一个值)
//它的地址还是指向a的;
$a=200;
$b=300;
echo '$a='.$a; //结果为$a=200
echo '<br/>';
echo '$b='.$b; //结果为$b=200
?>
常量的声明:
1.在运行过程当中值不发发生变化。
2.常量在运行过程当中值不可以被修改和删除
3.常量是全局的
4.常量用的值,我们通常只用标量
5.常量可以小写,但是为了更好的区分这是常量,通常大写。
注意:
调用常量,禁止在外加引号,双引单引都不行。这样的话是读取字符串
常量定义:
define('常量名','常量值');
define('ABC','发大财'); //这里ABC不加$,后面常量可以是整形,或者浮点型。
规则如下:
1.常量名:字母(一般大写),下划线,数字(不能开头)
2.常量值:只能用标量.
3.常量在运行过程当中不可以被重新赋值.
4.unset(ABC);不能删除 //我们数据库的地址,不用改变,我们用它的特性来定一个常量
5.常量是全局的
6.常量名通常大写
PHP超全局数组及外部变量
超全局数组:
$_POST post传值
$_GET get传值,可以在浏览器的地址栏来直接传值
注意:
post发送的内容只能用post来接收,而get发送的内容只能用get接收
$_REQUEST post与get模式都可以接收到
$_REQUEST post与get模式都可以接收到
数据类型:
有时候我们只需要获取数据的类型,这时我们就需要判断类型的函数
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_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来运算
PHP基本语法(二)的更多相关文章
- PHP语法(二):数据类型、运算符和函数
相关链接: PHP语法(一):基础和变量 PHP语法(二):数据类型.运算符和函数 PHP语法(三):控制结构(For循环/If/Switch/While) 这次整理了PHP的数据类型.运算符和函数. ...
- Python 基础语法(二)
Python 基础语法(二) --------------------------------------------接 Python 基础语法(一) ------------------------ ...
- web前端学习python之第一章_基础语法(二)
web前端学习python之第一章_基础语法(二) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...
- MySQL之单表查询 一 单表查询的语法 二 关键字的执行优先级(重点) 三 简单查询 四 WHERE约束 五 分组查询:GROUP BY 六 HAVING过滤 七 查询排序:ORDER BY 八 限制查询的记录数:LIMIT 九 使用正则表达式查询
MySQL之单表查询 阅读目录 一 单表查询的语法 二 关键字的执行优先级(重点) 三 简单查询 四 WHERE约束 五 分组查询:GROUP BY 六 HAVING过滤 七 查询排序:ORDER B ...
- CodeSmith 基本语法(二)
CodeSmith之四 - 典型实例(四) CodeSmith API文档 (三) CodeSmith 基本语法(二) CodeSmith 图形界面基本操作(一) CodeSmith的C#语法与Asp ...
- Pocket英语语法---二、指示代词和不定代词是什么
Pocket英语语法---二.指示代词和不定代词是什么 一.总结 一句话总结: 指示代词:标识人或事物的代词,用来代替前面已提到过的名词 this.these.that.those不定代词:指代不确定 ...
- Vue模板语法(二)
Vue模板语法(二) 样式绑定 class绑定 使用方式:v-bind:class="expression" expression的类型:字符串.数组.对象 1.2 style绑 ...
- Shell系列(36)- for循环语法二简介及批量添加删除用户
for循环语法二 for ((初始值;循环控制条件;变量变化)) do 程序 done 例子 例子-1 求和工具 需求:根据用户输入的数字,求1~输入所有数字的和 脚本: #!/bin/bash re ...
- Python基本语法[二],python入门到精通[四]
在上一篇博客Python基本语法,python入门到精通[二]已经为大家简单介绍了一下python的基本语法,上一篇博客的基本语法只是一个预览版的,目的是让大家对python的基本语法有个大概的了解. ...
- ios -- 教你如何轻松学习Swift语法(二)
前言:swift语法基础篇(二)来了,想学习swift的朋友可以拿去参考哦,有兴趣可以相互探讨,共同学习哦. 一.可选类型(重点内容) 1.什么是可选类型? 1.1在OC开 ...
随机推荐
- 解决Ubuntu14.04下Clementine音乐播放器不能播放wma文件的问题
参考:Ubuntu 14.04 安装深度音乐的方法 问题描述:播放wma文件时提示"GStreamer插件未安装". 解决方法:安装gstreamer-ffmpeg插件即可解决问题 ...
- Windows Phone 8 开发环境搭建
原地址:http://blog.csdn.net/md521/article/details/11015139 Windows Phone 8将采用与Windows 8相同的NT内核,这就意味着WP8 ...
- 用PYTHON硬写SOCKET
这个文章的系列很有意思,练练~~: http://python.jobbole.com/82763/ :) 第一步,最简单的SERVER和CLIENT.感觉和写JAVA,C的最简单的一样一样的,,看来 ...
- USB CDC类
现代嵌入式系统中,异步串行通信接口往往作为标准外设出现在单片机和嵌入式系统中.但是随着个人计算机通用外围设备越来越少地使用串口,串口正在逐渐从个人计算机特别是便携式电脑上消失.于是嵌入式开发人员常常发 ...
- 创建安卓app的30个经验教训
在添加任何第三方party之前,请三思:这真的是一个成熟的项目吗? 如果一个东西用户看不到,就不要绘制它! 除非真的需要,否则别使用数据库: 达到65k方法数限制来的非常快,真的,非常快!不过 mul ...
- [Android] 修改设备访问权限
在硬件抽象层模块中,我们是调用open函数来打开对应的设备文件的.例如,在2.3.2小节中开发的硬件抽象层模块freg中,函数freg_device_open调用open函数来打开设备文件/dev/f ...
- 转:Apache和Nginx运行原理解析
Web服务器 Web服务器也称为WWW(WORLD WIDE WEB)服务器,主要功能是提供网上信息浏览服务. 应用层使用HTTP协议. HTML文档格式. 浏览器统一资源定位器(URL). Web服 ...
- 一类最小割bzoj2127,bzoj2132 bzoj3438
思考一下我们接触的最小割问题 最小割的基本问题(可能会和图论的知识相结合,比如bzoj1266,bzoj1797) 最大权闭合图(bzoj1497) 最大点权覆盖集,最大点权独立集(bzoj1324) ...
- BZOJ_1012_[JSOI2008]_最大数maxnumber_(线段树/树状数组+RMQ)
描述 http://www.lydsy.com/JudgeOnline/problem.php?id=1012 两种操作: 1.求序列末尾n个数中的最大值. 2.在序列末尾插入一个数. 分析 线段树求 ...
- POJ 1321 棋盘问题(DFS & 状压DP)
用DFS写当然很简单了,8!的复杂度,16MS搞定. 在Discuss里看到有同学用状态压缩DP来写,就学习了一下,果然很精妙呀. 状态转移分两种,当前行不加棋子,和加棋子.dp[i][j]中,i代表 ...