php变量和数据类型
php中的变量
PHP中的变量声明
PHP中的变量的使用
PHP中的数据类型之整型
PHP数据类型之浮点类型和布尔类型
PHP数据类型之字符串类型
PHP数据类型之heredoc和nowdoc的使用
PHP数据类型之复合类型和特殊类型n
PHP中的数据类型转换之自动转换
PHP数据类型转换之强制转换中的临时转换
PHP数据类型转换之强制转换中的永久转换
什么是变量
在程序执行期间可以变化的量的就是变量,通过变量保存值
声明变量:
通过美元$变量名称来表示变量,可以声明变量在使用,也可以不声明,可以一次声明一个,也可以一次声明多个
变量名称以字母或者下划线开始,后面跟上数字、字母下划线,不能包含特殊字符
变量名称最好含义明确
变量命名最好遵循驼峰标记法或者是下划线法
驼峰标记法
小骆驼
firstName,lastName,zendControllerFront
大骆驼
FirstName,LastName,ZendControllerFront
下划线法
first_name,last_name,zend_controller_front
变量名称严格区分大小写,$a和$A这是两个变量
如果变量名称重复,后面的变量会覆盖之前变量的值
PHP是弱类型语言,变量可以不声明直接使用
使用变量
直接书写变量的名称即可
$变量名称
可变变量
等量代换
Parse error(解析错误): syntax error(语法错误), unexpected '<', expecting end of file
Notice(通知): Undefined variable(未定义的变量): sdkljflskdjflksdjflksdjfklj
Catchable fatal(致命) error: Object of class stdClass could not be converted to string
Warning(警告): settype(): Invalid(非法) type
php中的数据类型
8种主要数据类型
5种伪类型
5种伪类型
number
mixed
callback
void
...
标量类型
复合类型
特殊类型
复合类型
数组(Array)
对象(Object)
特殊类型
资源(Resource)
空(null|NULL)
变量未声明直接使用,它的值就是null
声明一个变量并且赋值为null
经过unset()注销过的变量值为null
整型(int|integer)
整数
分类
十进制
八进制
十六进制
范围
带符号,-21亿21亿之间,不带符号042亿
超过整型存储范围,会产生溢出的现象
浮点型(float|double|real)
带小数点
科学计数法的写法,e或者E
注意
浮点数是有误差,不要比较两个浮点数的大小
布尔型(bool|boolean)
要么是真,要么是假
true|TRUE:真
false|FALSE:假
标量类型
特点
只能存储单一数据
字符串型(string)
定界符
转义符
花括号{}
转义符
\n
换行
\r
回车
\t
水平制表符
\\
\
\$
$
\'
'
\"
"
源代码中有效果,页面上只显示一个空格
单引号
双引号
heredoc
<<<名称
代码段;
名称;
<<<"名称"
代码段;
名称;
注意
在结束名称之前不能有任何输出
heredoc相当于双引号
nowdoc
<<<'名称'
代码段;
名称;
注意
nowdoc相当于单引号的作用
单引号和双引号的区别
单引号不解析变量,双引号解析变量
单引号只解析'和\,而双引号解析所有的转义符
可以将PHP中的变量括成一个整体来解析
{$变量名称}
${变量名称}
可以对字符串中的指定字符做增删改查的操作
字符串的下标从0开始
根据下标找到对应的字符做操作
echo
输出一个或者多个字符串
var_dump
打印变量的详细信息,可以一次打印一个或者多个变量的详细信息
var_dump($var,....)
print_r()
打印数组的信息
print_r($var)
php中的数据类型转换之自动转换
自动转换(隐式转换)
强制转换(显示转换)
程序会根据上下文环境自动的进行转换
其它类型转换成数值型
true->1
false->0
null->0
字符串如果以非法数值开始,直接转换成0;
如果字符串以合法数值开始,一直取到第一个非法数值结束
其它类型转换成字符串型
数值型直接转换成数值本身
true->1
false->空字符串
null->空字符串
数组->Array
资源->Resource id #数字
对象不能直接转换成字符串
其它类型转换成布尔类型假的有
0->false
0.0->false
空字符串''或者""或者'0'或者"0"->false
null->false
空数组array()->false
(变量类型)$变量名称
整型
(int)$变量名称|(integer)$变量名称
浮点型
(float|double|real)$变量名称
字符型
(string)$变量名称
布尔型
(bool|boolean)$变量名称
空
(unset)$变量名称
数组
(array)$变量名称
对象
(object)$变量名称
通过系统函数实现
intval($var)
返回变量转换成整型之后的值
floatval($var)|doubleval($var)
返回变量转换成浮点型的值
strval($var)
返回变量转换成字符串的值
boolval($var)
返回变量转换成布尔类型的值
注意
临时转换不改变变量本身的类型
永久转换
settype($var,$type)
设置变量的类型
gettype($var)
返回变量的类型
注意
不要使用gettype得到变量的类型,因为后续可能返回值会改变
通过变量函数库检测变量的类型
is_*($var)
检测的结果要么true,要么false
整型
is_int()|is_integer()|is_long()
浮点型
is_float()|is_double()|is_real()
字符串型
is_string()
布尔类型
is_bool()
标量类型
is_scalar()
空null
is_null()
数组
is_array()
对象
is_object()
资源
is_resource()
是否为数值型或者字符串形式的数值
is_numeric()
自动转换(隐式转换)
强制转换(显示转换)
print_r()
打印数组的信息
print_r($var)
unset
销毁变量,可以一次销毁一个或者多个,销毁之后变量的值为null
unset($var,...)
header语句的作用
header('content-type:text/html;charset=utf-8');
告诉浏览器以什么编码方式解析什么类型的文档
ord($character)
返回指定字符的ASCII码值
chr($ascii)
根据ASCII码值返回指定的字符
strpos()
stripos()
strrpos()
date_default_timezone_set()
date_default_timezone_get()
time()
date()
exit($msg)/die($msg)
强制转换(显示转换)
临时转换,永久转换
意见反馈:
若本号内容有做得不到位的地方(比如:涉及版权或其他问题),请及时联系我们进行整改即可,会在第一时间进行处理。
感谢阅读,原创不易,喜欢就点个赞吧,这是我写作最大的动力。
欢迎关注达达的简书!
这是一个有质量,有态度的博客