PHP 数据类型划分(8种)、获取数据(变量)的类型函数、单引号和双引号的字符串区分转义符、定界符、拓展
首先,我们来看看八种数据类型划分有哪些?
数据类型划分:
基本类型(标量类型):
- 整数类型:int integer
- 浮点数类型:float double
- 字符串类型:string
- 布尔类型:bool Boolean
复合类型:
- 数组:array
- 对象:object
特殊类型:
- 空类型:null 这种类型中只有一个数据,那就是null,不区分大小写。
- 资源类型 :resource 是一种特殊变量,保存了到外部资源的一个引用。资源是通过专门的函数来建立和使用的。
了解了之后, 这几种大家应该在熟悉不过了吧?但深入的知识点,还需自己探究跟摸索。接下来了解获取数据(变量)的类型函数,单引号和双引号的字符串区分。
获取数据(变量)的类型函数:
- getType($变量名) 返回类型 (不建议使用,了解一下即可)
- var_dump($变量名) 输出类型 数据内容 (长度) (熟悉,PHP 常用来做精密调试)
单引号和双引号的字符串区分+转义符:
单引号和双引号的字符串区分:在以前分享中有简单的介绍,接下来分享的主要是转义符。
转义符:
单引号字符串: 最后一个\ 要转义
- 转义符: \\ \'
双引号字符串:
- 转义符 : \\ \" \n(换行),\r(回车),\t(tab)
- \$ 表示“$”,取消在双引号 字符串 的 变量起始含义
// 单引号字符串:
$v1 = 123;
$str1 = 'ab\\cd\'efg $v1';
echo $str1; // ab\cd'efg $v1
// 双引号字符串:
$v1 = 123;
$str2 = "ab\"cd\nfg\tabcd \$v1";
echo $str2; // ab"cd//fg abcd $v1
定界符:
双引号的 可以转义 识别变量 单引号没有
取一个类似常量名的名字 以<<<加该名字开始 用该名字及分号结束 只能出现该名字及一个分号 (里面的内容都可以出现)
$str3 = <<<"AVBD"
abcddsff,;
AVBD;
echo "<br>$str3";
拓展:
int 、integer的区别:
- int:基本数据类型,默认值为0。
- integer:类,默认值为null。
float、double 的区别:
- float:单精度,有效数字位7位。
- double:双精度,有效数字位16位。
bool、Boolean的区别:
- bool:基本数值。
- Boolend:对象。
资源类型:resource
- is_resource() 函数测定一个变量是否是资源。
- get_resource_type()函数则返回该资源的类型。
类型的转换:
自动转换:又"运算符"或类似运算符的语句来决定的
需要某种数据类型,而给出的数据不是此类型,会发生自动转换,将该类型转换成目标类型
//常见的自动转换:
$v1 = 1 + 2; // 3
$v2 = 1 + "2";// 3
$v3 = "1" + 2;// 3
$v4 = "1" + "2";//3//在PHP,算术运算符,就只是对数值就行计算
$v5 = 1 + "2asd";//3
$v6 = "1" + "2asd";//3
$v7 = "1asd" + "2asd";//3
$v8 = "1asd" + "asd2";//1
$v9 = "asd1" + "asd2";//0//可见 只识别字符串前面的数字部分
$v10 = 1 + true;//2
$v11 = 1 + false;//1
强制转换:
$v1 = 123;
$s1 = (float)$v1;//将$v1 的值转换为float类型
$s2 = (string)$v1;//将$v1 的值转换为string类型echo "<br>s1 为";var_dump($s1);
echo "<br>s2 为";var_dump($s2);
简单讲述:
- 通常目标类型:int,float,string,bool,array,object
- 强制转换类型,并不改变该变量的本身数据或类型,
对应有一个语法是直接改变原本的数据以及类型;
// settype($变量名,目标类型);$v2 = 123;echo "<br>v2未转类型为";var_dump($v2);setType($v2,"string");//直接转换$v2的类型为stringecho "<br>v2为";var_dump($v2);// v2为string(3) "123"
在转义符案例中:php在浏览器输出的你所见到结果是经过浏览器解析而得到的,需要查看源码文件或者加上<pre>标签得到的才是理想的答案。
integer的拓展知识:自动拆箱和自动装箱。(有兴趣了解一下,对以后稍有用处)
PHP 数据类型划分(8种)、获取数据(变量)的类型函数、单引号和双引号的字符串区分转义符、定界符、拓展相关推荐
- 已解决Python向数据库插入数据的字符串中含有单引号或双引号报错
已解决Python向数据库插入数据的字符串中含有单引号或双引号报错:(102, b"Incorrect syntax near 'S'.DB-Lib error message 20018, ...
- python中定义变量有引号和单引号_说说Python 单引号、双引号、三引号的区别?...
公众号新增加了一个栏目,就是每天给大家解答一道Python常见的面试题,反正每天不贪多,一天一题,正好合适,只希望这个面试栏目,给那些正在准备面试的同学,提供一点点帮助! 小猿会从最基础的面试题开始, ...
- mysql varchar 单引号_char、varchar数据类型值在使用时可以要用单引号或双引号括起来。...
[单选题]幼儿主要的活动方式是( ) [单选题]在CREATE TABLE语句中,通常使用( ) 关键字来指定主键. [简答题]传统密码 [单选题]收集资料的目的不包括 [单选题]阅读课文p100第三 ...
- Linux 中三种引号(单引号、双引号、反引号)的区别
1.双引号 保护特殊元字符和通配符不被 shell 解析,但是允许变量和命令的解析,以及转义符的解析. 2.单引号 单引号内不允许任何变量.元字符.通配符.转义符被 shell 解析,均被原样输出. ...
- python举两种字符串引号的例子_python里的单引号和双引号的有什么作用
在Python当中表达字符串既可以使用单引号,也可以使用双引号,那两者有什么区别吗? python单引号和双引号的区别 简单来说,在Python中使用单引号或双引号是没有区别的,都可以用来表示一个字符 ...
- shell字符串中同时包含单引号和双引号的一种处理方法
字符串的几种标识方法 我们知道在shell中表示字符串一般是用单引号或者是双引号放在整个字符串的开头和结尾. 如果字符串中只包含单引号,那么可以用双引号括起来. 同理如果字符串中包含双引号可以用单引号 ...
- python语言中有3种表示字符串的方式、单引号和_Python中三种类型的引号(单引号、双引号、三引号)...
当向Python输入一个字符串时,要将字符串放到引号中,Python含有三种类型的引号: 单引号形式:' ' 双引号形式:" " 三引号形式:''' ''' (三个单引号组 ...
- [转载] Python中三种类型的引号(单引号、双引号、三引号)
参考链接: Python中的三引号 当向Python输入一个字符串时,要将字符串放到引号中,Python含有三种类型的引号: 单引号形式:' ' 双引号形式:" " 三引号形式 ...
- 使用变量时,单引号、双引号、反向单引号的区别
单引号,双引号,反向单引号的区别: 1.单引号:当变量内容用单引号('')时,对里面的命令echo和变量USER都无法识别,只识别成字符串本身,称之为强引用. 2.双引号:当变量内容用双引号(&quo ...
最新文章
- 论文解读 | 微信看一看实时Look-alike推荐算法
- 解决IIS中HTTP/1.1 500 Server Error错误的方法
- #ifndef.#define, #endif 的用法
- python3 logging模块_python3中使用logging模块写日志,中文乱码,如何解决?
- 【QT】QT从零入门教程(八):QT常用控件 [QLabel、QPushButton、QLineEdit、QTextEdit]
- 伯努利-欧拉装错信封问题
- 平凡之路_2022年
- C# 防止Winform窗体假死
- CKA真题:题目和解析-5
- 论文阅读:Regularizing Deep Networks with Semantic Data Augmentation
- SpringBoot发送邮件(二)发送包含图片的邮件
- 2014.03.31_一年很快过去了
- 微擎 人人商城 对接京东vop 对接京东商品,同步商品 地址,库存,价格,上下架等。(一) 同步商品...
- 蓝牙杂散超标_蓝牙杂散问题
- 电锯惊魂—经典的语言
- Linux之shell脚本循环语句for while until
- 开源“大地震”下,华为如何复制 Google 模式?
- oracle 物化视图没效果,Oracle物化视图失效的几种情况及测试
- 如何通过clickhouse找出灌水用户
- Js中的时间之gmc/utc/cst/dst/iso/时间戳
热门文章
- 全志H616高画质芯片香橙派Orange Pi Zero2开发板音频测试说明
- discuzx update sitekey.php,Discuz如何清除应用中心密码附加工具
- 个人博客,Springboot + Vue搭建属于自己的博客
- 35款 JavaScript 图形图表库
- open FIFO for write returns “No such device or address”
- js获取当前时间的前一天/后一天 ,前一月/后一月
- Java-web案例2(扩展了session与cookie)
- 打车日记 - 谨慎的小哥哥
- docker使用dockerfile方式运行java程序
- Pulmonary--Classification1