一、数据类型
1,数据类型分类
#1,标量的数据类型;
- 布尔类型:boolean
· true
· false
- 整型:integer
· 32位:【2^32~-1】
· 64位:【2^64~-1】
- 浮点类型:float/double
- 字符串:string #定义类型时,要用引号引起来;
#2,复合数据类型:
- 属组:array #[$_GET]\[$_POST]
- 对象:object
#3,特殊类型:
- 资源:resource
- 空:null
2,定义变量打印数据类型
<?php
$x = 200;
var_dump($x);
?>
3,科学计数法
<?php
$x = 200;
$y = 2e3; //2*1000
var_dump($y);
?>
二、整型-打印不同进制整型
<?php
$x = 200; //10进制
$y = 022; //8进制
$z = 0x1f; //16进制
var_dump($x);
var_dump($y);
var_dump($z);
?>
三、定义字符串类型
1,定义打印字符串
<?php
$x = "哈哈";
echo $x.'<br />';
?>
2,字界符的打印
cat > 1.txt <<EOF
…
EOF
xxxxxxxxxx <?php $x = <<<EOF <h1>今天是个好日子</h1> 心想的事儿都能成!<br /> <b>今天明天都是好日子~</b> <del>咱赶上了盛世~</del><br /> <i>享太平~</i> EOF; echo $x;?>
四、打印数据类型的函数
1,打印数据类型和其值var_dump
根据字符集不同:中文3个字节、英文1字节;
<?php
$x = "哈";
var_dump($x);
//echo $type;
?>
2,仅打印数据类型gettype
<?php
$x = <<<EOF
<h1>今天是个好日子</h1>
心想的事儿都能成!<br />
<b>今天明天都是好日子~</b>
<del>咱赶上了盛世~</del><br />
<i>享太平~</i>
EOF;
$type = gettype($x);
echo $type;
?>
3,判断数据类型的真假
is_*函数:它是is_type的函数:
- 用来判断这个数据是不是指定的类型;
- 如果是这个类型,返回位真true
- 如果不是这个类型,返回为假false
· 判断是否为布尔类型is_bool
<?php
$x = "a";
if(is_bool($x)){
echo "为真";
}else{
echo "为假";
}
?>
· 判断是否为空值类型is_null
<?php
if(is_null($x)){
echo "为空";
}else{
echo "不为空";
}
?>
· 判断是否为数值is_numeric
<?php
$x = "w";
if(is_numeric($x)){
echo "为数值类型";
}else{
echo "不是数值类型";
}
?>
· 判断是否为标量类型is_scalar
<?php
$x = array(111,222,333,444);
if(is_scalar($x)){
echo "是标量";
}else{
echo "不是标量";
}
?>
· 判断是否为函数is_callable
<?php
if(is_callable("var_dump")){
echo "是函数";
}else{
echo "不是函数";
}
?>
· 其他判断真假函数
#相关判断函数信息总结:
01 is_int 判断是否为整型
02 is_bool 判断是否为布尔
03 is_float 判断是否为浮点
04 is_string 判断是否为字符串
05 is_array 判断是否为数组
06 is_object 判断是否为对象
07 is_null 判断是否为空
08 is_resource 判断是否为资源类型
09 is_scalar 判断是否为标量
10 is_numeric 判断是否为数值类型
11 is_callable 判断是否为函数
五、开发运算符号
1,常用的运算符号介绍
#1,运算类
+ #加
- #减
* #乘
/ #除
% #取余
#2,自增自检运算符$x=1
$x++ #先赋值,后自增1
$x-- #先赋值,后自减1
++$x #先自增1,再赋值
--$x #先自减1,再赋值
#3,判断运算符
>
<
>=
<=
= #赋值
== #等于(值相同,数据类型可以不同)
=== #全等于(值和数据类型必须全相同)
!=
!==
#4,逻辑运算符$x $y
and/&& #【与】:$x and $y 只有在二者都为真的时候,他们俩的结果才为真;
or/|| #【或】:$x or $y 只有在二者都为假的时候,他们俩的结果才为假,否都为真;
! #【非】:
xor #【异或】:想通则为假,不同则为真
#5,特殊运算符
`` #再系统中执行代码
=> #设置数组下标;
2,运算案例
· 加法
<?php
$x = 100;
$y = 20;
echo $x + $y;
?>
· 取余%
<?php
$x = 2024;
$y = 12;
echo $x % $y;
?>
· 自增$x++
<?php
$x = 2024;
$y = $x++;
echo '$x的变量值为:'.$x.'<br/>';
echo '$y的标量值为:'.$y;
?>
· 自增++$x
<?php
$x = 2024;
$y = ++$x;
echo '$x的变量值为:'.$x.'<br/>';
echo '$y的标量值为:'.$y;
?>
· 自减$x–
<?php
$x = 2024;
$y = $x--;
echo '$x的变量值为:'.$x.'<br/>';
echo '$y的标量值为:'.$y;
?>
· 自减–$x
<?php
$x = 2024;
$y = --$x;
echo '$x的变量值为:'.$x.'<br/>';
echo '$y的标量值为:'.$y;
?>
· 逻辑运算and
<?php
$x = true; //真
$y = true; //假
if( $x and $y ){
echo '为真';
}else{
echo '为假';
}
?>
· 逻辑运算or
<?php
$x = false;
$y = false;
if( $x or $y ){
echo '为真';
}else{
echo '为假';
}
?>
· 反引号案例
<?php
header("content-type:text/html; charset=gbk");
echo '<pre>';
echo `ipconfig`;
echo '</pre>';
?>
六、初识数组数据类型array
1,基本介绍
数组:将多个变量数值,存放到一个变量集合当中,这个变量的集合,就是数组
- 元素:数组当中的变量值就是元素;
- 下标:其实本质上就是单独一个值得变量名,默认从0开始;
#定义一个数组变量
$shuzu = array("haha",200,3.14159265357,true);
<?phpheader("content-type:text/html; charset=gbk");$shuzu = array("haha",200,3.14159265357,true);var_dump($shuzu);?>
2,定义数组自定义下标
<?php
header("content-type:text/html; charset=utf-8");
$shuzu = array("一等奖"=>"haha","二等奖"=>200,"三等奖"=>3.14159265357,"四等奖"=>true);
var_dump($shuzu);
?>
3,单独打印数组其中一个元素
<?php
header("content-type:text/html; charset=utf-8");
$shuzu = array("一等奖"=>"haha","二等奖"=>200,"三等奖"=>3.14159265357,"四等奖"=>true);
//var_dump($shuzu);
echo $shuzu["二等奖"];
?>
4,计数函数count()
<?php
header("content-type:text/html; charset=utf-8");
$shuzu = array("一等奖"=>"haha","二等奖"=>200,"三等奖"=>3.14159265357,"四等奖"=>true);
echo count($shuzu);
?>
5、rand() 随机数函数;
<html>
<head>
<meta http-equiv="Content-Type" content="text/html" charset="utf-8">
<title>抽奖活动</title>
</head>
<body>
<form action="test.php" method="get">
抽奖按钮:<input type="submit" value="抽一下">
</form>
</body>
</html>
<?php
header("content-type:text/html; charset=utf-8");
$suijishu = rand(0,2);
$jiangpin = array("7w人民币","14w人民币","1亿");
$result = $jiangpin[$suijishu];
echo "恭喜您获得:".$result."奖励";
?>
七、流程控制
#1,判断
- 三元运算(了解就可以),可以实现简单的条件判断;
- if条件判断;【区间条件判断】;
- switch:【有限的条件下做选择时使用】
#2,循环
- while循环;
- for循环;
- foreach循环:针对数组中的元素进行循环遍历;
1,三元运算判断
语法:条件 ? 条件为真执行的代码 : 条件为假执行的代码;
2,if条件判断
如果…就…否则…
#单条件分支语法:
if(条件判断){
满足条件要执行的代码
}
#双条件分支
if(条件判断){
满足条件要执行的代码
}
else{
不满足条件要执行的代码
}#多条件分支
if(条件判断){
满足条件要执行的代码
}elseif(条件2)
{
满足条件2要执行的代码
}else{
不满足前面条件要执行的代码
}
· 双分支案例
<?php
header("content-type:text/html; charset=utf-8");
$chengji = 59;
if($chengji >= 60 ){
echo "恭喜你,及格了";
}else{
echo "完犊子!";
}
?>
· 多条件分支
<?php
header("content-type:text/html; charset=utf-8");
$chengji = 99;
if($chengji >= 60 and $chengji < 80){
echo "恭喜你,及格了";
}elseif($chengji >= 80){
echo "恭喜你,获得奖学金!";
}else{
echo "完犊子玩仍!";
}
?>
· 案例:根据时间问候不同话术上午、下午、晚上;
date(“H”) :时间的小时字段信息;
<?php
header("content-type:text/html; charset=utf-8");
$shijian = date("H");
if($shijian >= 6 && $shijian < 12 ){
echo "上午好";
}elseif ($shijian >= 12 && $shijian < 18) {
echo "下午好";
}else{
echo "晚上好";
}
?>