PHP基础学习第十四篇(了解和使用PHP的数据类型、常量、字符串变量、运算符)
一、PHP数据类型
PHP支持以下几种数据类型:
String(字符串):“abc” ,这是一个字符串。
Integer(整数):指没有小数部分的数据1/3/7等
Float(浮点型):单精度浮点数是用来表示带有小数部分的实数-3.4E38~3.4E38
Boolean(布尔型):TRUE或FALSE
Array(数组):[1,2,7,6,3]
Object(对象):Class(了解就行)
NULL(空值):不是0
Resource(资源类型):保存了到外部资源的一贯引用(了解就行)
整数类型:
整数是一个没有小数的数字。
整数规则:整数必须至少有一个数字(0-9),整数不能包含逗号和空格,整数是没有小数点的,整数可以是正数或负数,整数可以用三种格式来指定:十进制,十六进制(以0x为前缀)或八进制(前缀为0)。
布尔型:
布尔型可以是true或false,通常用于条件判断。
数组:
可以在一个变量中储存多个值。
举例:
<?php
$cars=array("Volvo","BMW","Toyota");
var_dump($cars);
?>
对象数据类型:(了解即可)
对象数据类型也可用于储存数据。在PHP中,对象必须声明。
举例:
Class Car
{
var $color;
function __construct($color="green") {
$this->color=$color
}
function what color() {
return $this->color
}
}
NULL值:
表示变量没有值。null是数据类型为null的值。null值指明一个变量是否为空值。同样可用于数据空值的null值的区别。
可以通过设置变量值为null来清空变量数据。
举例:
<?php
$x="Hello world!";
$x=null;
var_dump($x);
?>
Resource(资源类型):
PHP资源resource是一种特殊变量,保存了到外部资源的一个引用。
常见资源数据类型有打开文件,数据库连接,图形画布区域等。
由于资源类型变量保存有为打开文件,数据库连接,图形画布等的特殊句柄,因此将其它类型的值转换为资源没有意义。
使用 get_resource_type()函数可以返回资源(resource)类型get_resource_type(resource $handle):string 此函数返回一个字符串,用于表示传递给它的resource的类型。
如果参数不是合法的resource,将产生错误。
举例:
$c=mysql_connect();
echo get_resource_type($c)."\n"; //打印:mysql link
$fp=fopen("foo","w");
echo get_resource_type($fp)."\n"; //打印:file
$doc=new_xmldoc("1.0");
echo get_resource_type($doc->doc)."\n"; //打印:domxml document
常量:
常量是一个简单值的标识符。该值在脚本中不能改变。
一个常量由英文字母、下划线、和数字组成,但数字不能作为首字母出现。(常量名不需要加$修饰符)。常量在脚本中都可以使用。
使用define()设置常量
bool define (string $name,mixed $value [, bool$case_insensitive=false])
name:必选参数,常量名称,即标志符。
value:必须参数,常量的值。
case_insensitive:可选参数,如果设置true,该常量则大小写不敏感,默认是大小写敏感的。
举例:
<?php
//区分大小写的常量名
define("GREETING","欢迎访问baidu.com");
echo GREETING; //输出“欢迎访问baidu.com”
echo '<br>';
echo greeting; //输出“greeting”,但是有警告信息,表示该常量未定义
?>
举例二:
常量在定义后,默认是全局变量,可以在整个运行的脚本的任何地方使用。
<?php
define("GREETING","欢迎访问 baidu.com");
function myTest() {
echo GREETING;
}
myTest(); //输出“欢迎访问baidu.com”
?>
字符串变量:
字符串变量用于储存并处理文本
<?php
$txt="Hello world!";
echo $txt;
?>
并置运算符:
并置运算符(.)用于把两个字符串值连接起来
举例:
<?php
$text1="Hello world!";
$text2="What a nice day!";
echo $txt1 . " ". $txt2;
?>
strlen()函数:
strlen()函数返回字符串的长度(字节数)
<?php
echo strlen("Hello world!")
?>
strpos()函数:
strpos()函数用于在字符串内查找一个字符或一段指定的文本。如果在字符串中找到匹配,该函数会返回第一个匹配的字符位置。如果未找到匹配,则返回FALSE
<?php
echo strpos("Hello world!","world");
?>
String 函数参考手册:https://www.runoob.com/php/php-ref-string.html
PHP算数运算符:
+:加x+y
-:减x-y
*:乘x*y
/:除x/y
%:取余x%y除以的余数
-x:取反
a.b:并置
赋值运算符:
x=y x=y 左操作数被设置为右侧表达式的值
x+=y x=x+y 加
x-=y x=x-y 减
x*=y x=x*y 乘
x/=y x=x/y 除
x%=y x=x%y 模(除法的余数)
a.=b a=a.b 连接两个字符串
递增、递减运算符:
++x 预递增 x加1 然后返回x
x++ 后递增 返回x 然后x加1
--x 预递减 x减1 然后返回x
x-- 后递减 返回x 然后x减1
比较运算符:
x==y 等于 如果x等于y,则返回true 不等于则返回false
x===y 绝对等于 如果x等于y,且它们类型相同则返回true 5="5"返回false
x!=y 不等于 如果x不等于y,则返回true
x<>y 不等于 如果x不等于y,则返回true
x!==y 绝对不等于 如果x不等于y,或它们类型不相同 则返回true
x>y 大于 如果x大于y,则返回true
x<y 小于 如果x小于y,则返回true
x<=y 小于等于 如果x小于等于y,则返回true
x>=y 大于等于 如果x大于等于y,则返回true
逻辑运算符:
x and y 与 如果x和y都为true,则返回true
例如:x=6,y=3 (x<10 and y>1)返回true
x or y 或 如果x和y至少有一个为true,则返回true
例如:x=6,y=3 (x<10 or y==2)返回true
x xor y 异或 如果x和y有且仅有一个为true,则返回true
例如:x=6,y=3 (x==6 xor y==3)返回false
演示的内容如下:
<?php
//演示PHP数据类型
$x ="xm ha ha";//演示字符串
echo $x;
$x=5;//演示整数
$y=5;
$x+=$y;//x=x+y
echo "<br>".$x;
$x=3.1415926;//演示浮点数
echo "<br>".$x;
//演示布尔型
if($x>3){echo "<br>"."true";
}else{echo "<br>"."false";
}
echo"<br>";
//演示数组
$array1=array("小学","初中","高中");
var_dump($array1);
echo "<br>";
//演示空值,千万记住null不等于0
$x=null;
var_dump($x);
echo"<br>";
$x=0;
var_dump($x);
echo"<br>";
define("GREETING","欢迎访问小莫博客");//演示常量
echo GREETING;
echo '<br>';
$x="xiaomo";
echo strlen($x);//演示strlen()函数,返回字符串的长度
echo"<br>";
echo strpos("Hello world!","e");//演示strpos()函数,查找文本所在位置
echo"<br>";
//演示取余运算
$b=3;//"="即为赋值运算符
$c=10;
$z=$c%$b;
echo $z;
echo"<br>";
//++,--运算符演示
$i=1;
$i++;//i=i+1
echo $i;
echo"<br>";
$i--;
echo $i;
$a=10;
$b=11;
echo"<br>";
//演示了逻辑运算符和比较运算符
if($a!=$b and $a>10){echo"两个内容相等";
}else{echo"两个内容不相等";
}
?>
效果图片:
PHP基础学习第十四篇(了解和使用PHP的数据类型、常量、字符串变量、运算符)相关推荐
- python学习[第十四篇] 文件的输入与输出
python学习[第十四篇] 文件的输入与输出 标准文件类型 一般来说只要程序一执行,就会访问3个文件: 标准输入(键盘) stdin 标准输出(显示器缓冲区) stdout 默认输出到屏幕 标准错误 ...
- Java基础学习——第十四章 网络编程
Java基础学习--第十四章 网络编程 一.网络编程概述 计算机网络: 把分布在不同地理区域的计算机与专门的外部设备用通信线路互连成一个规模大.功能强的网络系统,从而使众多的计算机可以方便地互相传递信 ...
- Java中执行存储过程和函数(web基础学习笔记十四)
一.概述 如果想要执行存储过程,我们应该使用 CallableStatement 接口. CallableStatement 接口继承自PreparedStatement 接口.所以CallableS ...
- MySQL数据库,从入门到精通:第十四篇——MySQL视图详解
MySQL数据库,从入门到精通:第十四篇--MySQL视图详解 第 14 篇_视图 1. 常见的数据库对象 2. 视图概述 2. 1 为什么使用视图? 2. 2 视图的理解 3. 创建视图 3. 1 ...
- CCNP-第十四篇-BGP综合实验
CCNP-第十四篇-BGP综合实验 大家好呀,学了那么长时间的BGP,又是一个巨大分水岭,那怎么能没综合实验呢? 答案以及个人录制视屏(数字那个视频因为录制软件的问题看不到命令行可以直接看后面的,不喜 ...
- 花书+吴恩达深度学习(十四)卷积神经网络 CNN 之经典案例(LetNet-5, AlexNet, VGG-16, ResNet, Inception Network)
目录 0. 前言 1. LeNet-5 2. AlexNet 3. VGG-16 4. ResNet 残差网络 5. Inception Network 如果这篇文章对你有一点小小的帮助,请给个关注, ...
- akka学习教程(十四) akka分布式实战
akka系列文章目录 akka学习教程(十四) akka分布式实战 akka学习教程(十三) akka分布式 akka学习教程(十二) Spring与Akka的集成 akka学习教程(十一) akka ...
- 第七十四篇:机器学习优化方法及超参数设置综述
第七十四篇:机器学习优化方法及超参数设置综述 置顶 2019-08-25 23:03:44 廖佳才 阅读数 207更多 分类专栏: 深度学习 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-S ...
- Java基础学习——第十六章 Java8新特性
Java基础学习--第十六章 Java8 新特性 Java8(JDK8.0)较 JDK7.0 有很多变化或者说是优化,比如 interface 里可以有静态方法和默认方法,并且可以有方法体,这一点就颠 ...
- Python之路【第十四篇】:AngularJS --暂无内容-待更新
Python之路[第十四篇]:AngularJS --暂无内容-待更新 转载于:https://www.cnblogs.com/weiman3389/p/6224181.html
最新文章
- 各方评论《面向儿童的人工智能北京共识》:这是中国人工智能发展轨迹中的一份关键文件...
- 面试题:函数回调机制、异步函数回调机制图例详解 没毛用
- orb_slam编译的 问题
- Dsp BootLoader的学习
- element UI 制作带快捷选项的时间选择器
- 7纳米!华为鲲鹏920芯片问世,最强性能面向智能计算
- 【转载】spring mvc 使用session
- elementUI 分页器使用时遇到的Bug
- 【Linux】ubuntu锐捷客户端连接四川大学校园网
- c++ pdflib 生成中文内容
- 保存3dmax场景很慢/卡
- 网易发起“疾风”智造IoT联盟,深化“互联网+先进制造业”发展
- 择一城终老,遇一人白首
- 计算机丢失iggy,我似乎已经丢失了什么
- 弹出框动态增加input输入框
- Linux 自定义service,并重定向输出到日志文件
- 3D打印无人机等无人设备6——谈一谈从设计到实践的分分合合,模型如何合并与拆分?
- K8S部署机器学习平台
- 写二语习得学年论文感想
- 【备注接口】为什么那么多人开网店不赚钱?原因如下
热门文章
- 计算机上的del键功能是什么,计算机上的DEL是什么?
- contest3 CF994 div2 ooxxx? oooox? ooooo?
- 关于阿里云的一键部署工具【飞流】的使用(详细)
- 三角网格库Triangle的使用
- Triangle 三角形求最小路径和 @leetcode
- XMind12周的学习使用-变成厉害的人成长记录
- python之parser.add_argument()用法——命令行选项、参数和子命令解析器
- ARM服务器市场现状研究分析-
- echarts地图边界数据的实时获取与应用,省市区县多级联动【附最新geoJson文件下载】
- GIS空间分析 缓冲区分析与叠加分析1 选址分析(市区择房)