php学习基础篇之数据类型转换、运算符、if 、switch 流程控制

本文详细介绍了PHP中的数据类型转换机制,包括隐式和显示转换,并通过实例展示了不同类型之间的转换过程。同时,文章还阐述了PHP中常用的运算符使用方法,如算术运算符、字符串运算符、赋值运算符、自增自减运算符等,并提供了多个示例进行说明。此外,文章还讲解了流程控制语句if、switch的用法及其区别,通过实际代码演示了如何根据不同条件执行不同的代码块。
知识点:
一:数据类型 转换
二  运算符
三 if 、switch 流程控制

一:数据类型转换
php 数据类型 8  字符串 整型 浮点型 布尔型  数组 对象 资源 null
php 弱变量类型:
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
header("content-type:text/html;charset=utf-8");
$a = "123";
$b = 10;
$c = $a+$b; // "123"==> 123    + 10;
echo $c;
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
1》隐式转换
1 转换成boolean
true ===>1
false: 以下内容 在运算的时候将变成false
0/0.0  --> false
空字符串  或 “0”---》 false
空数组/null   ---》false 
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
echo "<br />-----------------------<br />";
$aa = true;
$bb = 1;
echo $aa+$bb;
echo "<br />-----------------------<br />";
$cc = false;
$dd = 1;
echo $cc+$dd;
echo "<br />-----------------------<br />";
$bl = "";
$num= 1;
echo $bl+$num;
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
2 转换成数值型:
true===>1   false===>0
字符串带有e  E 将转换成 float
字符串 数字字符串   将转换成 整数  或 float
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
echo "<br />------------转换成数值型-----------<br />";
$num1 = 3;
$str = "3e+2"; //字符串
//echo $num1+$str;
$sum1 = $num1+$str;
var_dump($sum1);  //浮点型


echo "<br />------------转换成数值型2-----------<br />";
$str2 = "20.5";
$num2 = 5;
$sum2=$str2+$num2;
var_dump($sum2);
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
3 转换成字符串型
boolean   true===>“1” false 转换字符串"0"
int    123===>"123";
float  3.14===>"3.14";

null===> "";
数组 ==>  ”Array“
对象==》“object”
资源==》“resource #序号”
2》显示转换 了解 人为控制
int  float  bool string array object
$str = "aaa123";
(类型名称)$str;
(float)$str;
 
二  运算符
1. 字符串运算符  拼接符号   .
、、、、、、、、、、、、、、、、、、、、、、、、、
echo "<br />--------.----------------<br />";
$str = "abcdefg";
$str1 = "hijklmn";
$str2 = $str . $str1;
echo $str2;
、、、、、、、、、、、、、、、、、、、、、、、、、、
2 .算数运算符:
+  -  *  /   %(取余)
、、、、、、、、、、、、、、、、、、、、、、、、、
echo "<br />--------%----------------<br />";
$num1 = 10;
$num2 = 4;
$num3 = $num1 % $num2;
echo $num3;
、、、、、、、、、、、、、、、、、、、、、、、、、


3 赋值:
=   += -= *=  /= %= .=    $n1 = $n1 符号  $n2
、、、、、、、、、、、、、、、、、、、、、、、、、、、、
echo "<br />--------+=----------------<br />";
$n1 = 10;
$n2 = 5;
$n1 += $n2;   // $n1 = $n1+$n2;
echo $n2;
、、、、、、、、、、、、、、、、、、、、、、、、、、
4 自增 自减运算符
$i++ $i--   先参加运算 在自身 加/减 1
、、、、、、、、、、、、、、、、、、、、、、、、、
echo "<br />--------$i++----------------<br />";
$n3 = 5;
$n4 = $n3++; //   $n4 = $n3   $n3++===>$n3 = $n3+1;
echo $n4."-->".$n3;
、、、、、、、、、、、、、、、、、、、、、、、、
++$i --$i  先自身 加/减 1  在参加运算
、、、、、、、、、、、、、、、、、、、、、、、、、
echo "<br />--------++$i----------------<br />";
$n5 = 10;
$n6 = ++$n5;  // ++$n5===> $n5 = $n5+1     $n6 = $n5
echo $n6."--->".$n5;
、、、、、、、、、、、、、、、、、、、、、、、、、、、
5 比较运算符:
>  <  >=  <=  ==  != ===(全等)  !==(不等)
表达式1  符号  表达式2   true false
3 >2   true
3<2   false
、、、、、、、、、、、、、、、、、、、、、、、、、、、
echo "<br />--------==----------------<br />";
$n7 = 8;
//$n8 = 10;
$n8 = 8;
echo $n7==$n8;


echo "<br />--------===----------------<br />";


$str3 = "10";   // 类型  值  注意:== 只比较的值 不比类型
$n9 = 10; //类型 值   比较值  也比较类型。   !== 值 和 类型 一个不相等  不等。
echo $str3===$n9;
、、、、、、、、、、、、、、、、、、、、、、、、、、、、
6 逻辑运算:
&&  表达式1 && 表达式2   ==》 表达式1  表达式2  都是true    与式 结果 true
|| 表达式1 || 表达式2 ==》 表达式1  表达式2  都是false   或式 结果 false
! !表达式 ==》 取反

3 ==>!3;   !正整数  !负整数 ===》false;
!0      ===》 true;
! 非空字符串   ==》 false  
! "0"  ==> true
!"0.0" ===>false;
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
echo "<br />--------&& || !----------------<br />";
$a1 = 3;
$a2 = 4;
$a3 = 5;
//$a4 = $a1>$a2 || $a2<$a3;
$a4 =   $m=3  && $a2<$a3;
echo  $a4;


echo "<br />-------- !----------------<br />";
//$m = 0;
$m = "0";
echo !$m;   //false
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
7 三目运算符:
表达式?真执行:假执行
、、、、、、、、、、、、、、、、、、、、、、




echo "<br />-------- ?:----------------<br />";
$d = 5;
$e = 3;
$f = $d>$e?"ok":"no";  // 
echo $f;
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

8 位运算符:  了解
&  |  <<  >>

关于逻辑运算符短路的问题:
&&  表达式1  &&  表达式2   当两边全部都是true  结果 为true 
如果表达式1 false  后边的表达式2  不论对错 结果 false
||          表达式1  ||  表达式2    如果表达式1 true  后边表达式2 不论对错 ,结果 true

三 流程控制
一般情况下,程序是顺序执行,在某种情况下 ,需要改变顺序,流程控制。
1  if
格式: 
if(条件1){
条件1为真执行
}else if(条件2){
条件2为真执行
}else if(条件3){
条件3为真执行
}......
else{
以上条件都不成立 ,执行
}
有且只有一种可能存在。
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
header("content-type:text/html;charset=utf-8");
echo "<br />------------if--------------------<br />";
$wea = "雨天";
if($wea=="晴天"){
echo "睡觉";
}else if($wea=="雨天"){
echo "逛街";
}else if($wea=="雪天"){
echo "兜风";
}else{
echo "打球";
}
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、


2 switch
switch(表达式 ){
case val:执行代码;break;
case val:执行代码;break;
case val:执行代码;break;
.......
default: 以上条件都不成立执行;break;
}

if switch区别:
if 语句 嵌套  
if(){
if(){

}
}
switch() 不嵌套


要用print_r($_FILES["uImg"]);
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
echo "<br />------------switch--------------------<br />";
$wea1 = "雪天";
switch($wea1){
case "晴天":echo "睡觉";break;
case "雨天":echo "逛街";break;
case "雪天":echo "兜风";break;
default:echo "打球";break;
}
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值