php教程 php手册 php学习之运算符相关概念

php学习之运算符相关概念

Jun 21, 2016 am 08:54 AM
echo false gt lt true

复制代码 代码如下:


/*运算符号(PHP)操作符号
*
* 按运算符号功能分为:
* 一、算术运算符 + - * / % ++ --
* 二、字符串运算符 . 连接运算符
* 三、赋值运算符 = += -= *= /= %= .=
* 四、比较运算符 > = !==
* 比较运算符---条件运算符---关系运算符
* 比较后的结果只有一种:boolean true false
* === 比较时不仅要求内容相同,也要求类型相同
* !== 比较时内容不相同,也要求类型不相同
* 五、逻辑运算符 &&或and 或or !或not
* 逻辑运算符只能操作bool型的值,返回的也是bool型的值
* 六、位运算符 & ^ ~ > >>>
* 七、其他运算符 ? : `` @ => -> :: & $
* `` 用来执行操作系统内核
* @ 用来屏蔽掉错误信息
* 建议使用“()”改变表达式的优先级别
*
* % 有两个目的:整除运算;控制范围,不要用小数,也不要用负数
* % 会吧运算符两边的数转为整数后再进行整除求余。
*/
//用 %符号判断闰年
$year=2011;
if(($year%4==0 && %year%100!=0) $year%400=0)
{
echo "run nian";
}
else
{
echo " not run nian";
}
// ++ --符号的使用
$a=10;
$a++; //$a=$a+1; 先用变量,再自增1
++$a; //$a=$a+1; 先自增1,在用变量
$a--; //$a=$a-1; 先用变量,再自减1
--$a; //$a=$a-1; 先自减1,再用变量
echo $a; //结果为10
//++ -- 运算的区别
$a=10;
$b=$a++;//b=10,a=11
$c=--$b;//c=9,b=9
$d=$c++ + ++$c; //d=20,c=11
$e=$d-- - --$d; //d=18,e=2
echo $d;
//字符串运算符 . 的使用
$name="tom";
$age=27;
$height=1.75;
echo "我的名字是:{$name}我的年龄是:{$age}我的身高是:{$height}米
";
echo '我的名字是:'.$name.'我的年龄是:'.$age.'我的身高是:'.$height.'米'.'
';
echo "\$age=".$age; //$age=27
echo "我的名字是:{$name}我的年龄是:{$age}我的身高是:{$height}米
";//赋值运算符的使用
$a=10;
$a+=10; //$a=$a+10;
$a-=10; //$a=$a-10;
$a*=10; //...
$a/=10; //...
$a%=10; //$a=$a%10;
$a.="abc";//$a=$a."abc";
echo $a;
$str='

';
$str.='';
$str.='';
$str.='';
$str.='
';
$str.='
';
echo $str;//输出一个表格
//比较运算符
var_dump(15>6);//返回 bool(true)
$a=15;
if(15==$a)
{
echo "a=15";
}
else
{
echo "a!=15";
}
//逻辑运算符的使用
var_dump(true && true);//true
var_dump(true && false);//false
var_dump(true false);//true
var_dump(!true);//false
var_dump(!false);//true
//判断用户名密码
$username="admin";
$password="123456";
$email="290080604@qq.com";
if($username=="admin" && $password="123456")
{
echo "用户名密码正确";
}
if($username=="" $password=="" $email=="")
{
echo "一个都不能为空";
}
//位运算符
$a=20; //00010100
$b=30; // 00011110
/*
* 20 00010100
* 30 00011110 &
*-----------------------------------
* 00010100
*
*/
$c=$a & $b;
echo $c;
/*补充,& 也可以用做逻辑运算
* &&和的 短路问题:
* &&在作运算时,如果前面的数为false,则后面是否为true,整个表达式都为false,所以就不去执行后面的操作数;
* 在作运算时,如果前面的数为true,则后面的数是否为false,整个表达式都为true,所以就不去执行后面的操作数;
* 然而,& 或者 在作运算时,两边都会被执行
*/
$a=10;
if($a>5 $a++echo $a;//输出10
$b=10;
if($b>5 $b++echo $b;//输出11
/*
位的概念:一个位是由8个二进制数组成的(例00000000),
一个字节由8个位组成,那么就有32个二进制数。
原码:最高位 用0表示正数,1表示负数
+7 00000111
-7 10000111
反码:一个数如果为正,则它的反码与原码相同;
一个数如果为负,则符号位为1,其余各位是对原码取反;
+7 00000111
-7 11111000
+0 00000000
-0 11111111
补码:一个数如果为正,则它的补码与反码与原码相同
一个数如果为负,则它的补码=反码+1,去掉最高位的溢出位
-7 原码 10000111  反码11111000
+1
补码11111001
已知一个负数的补码,把它转换为十进制数。
1.先对各位取反
2.将其转换为十进制数
3.加上负号,再减去1。
例:补码11111010
取反00000101
4+1=5
-5-1=-6
位运算符:
& 按位与 按位或 ^按位异或 ~按位取反
例: 按位与 01101101
&00110111
00100101
结论:只有1 1为1。
按位或 01101101
00110111
01111111
结论:只有0 0为0。
按位异或 01101101
^00110111
01011010
结论:只有1 0或0 1时为1。(也可以理解为处于不同状态为1(真))
按位取反 ~00110111
11001000
结论:将0变1,1变0
移位运算符:
左移:> 无符号右移:>>>
例:数 x x>2 x>>>2
17 00010001 01000100 00000100 00000100
-17 11101111 10111100 11111011 00111011
结论:正数左右移动都补0,负数左移补0,带符号右移补1,不带符号补0
*/
//其他运算符的运用
$a=10;
$b=$a>5 ? $a : 5;//三元运算符,如果成立$b=$a否则$b=5
echo $b;
//用``来执行操作系统shell命令
$str=`ipconfig /all`;
echo '
'; <br>echo $str; <br>echo '
로그인 후 복사
';
?>



본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

뜨거운 기사 태그

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

화웨이 GT3 Pro와 GT4의 차이점은 무엇입니까? 화웨이 GT3 Pro와 GT4의 차이점은 무엇입니까? Dec 29, 2023 pm 02:27 PM

화웨이 GT3 Pro와 GT4의 차이점은 무엇입니까?

수정: Windows 11에서 캡처 도구가 작동하지 않음 수정: Windows 11에서 캡처 도구가 작동하지 않음 Aug 24, 2023 am 09:48 AM

수정: Windows 11에서 캡처 도구가 작동하지 않음

기술 세계를 탐험할 수 있도록 Go 언어 오픈 소스 프로젝트 5개를 선택했습니다. 기술 세계를 탐험할 수 있도록 Go 언어 오픈 소스 프로젝트 5개를 선택했습니다. Jan 30, 2024 am 09:08 AM

기술 세계를 탐험할 수 있도록 Go 언어 오픈 소스 프로젝트 5개를 선택했습니다.

Go 언어 개발 필수 사항: 인기 있는 프레임워크 권장 사항 5가지 Go 언어 개발 필수 사항: 인기 있는 프레임워크 권장 사항 5가지 Mar 24, 2024 pm 01:15 PM

Go 언어 개발 필수 사항: 인기 있는 프레임워크 권장 사항 5가지

iPhone에서 App Store 오류에 연결할 수 없는 문제를 해결하는 방법 iPhone에서 App Store 오류에 연결할 수 없는 문제를 해결하는 방법 Jul 29, 2023 am 08:22 AM

iPhone에서 App Store 오류에 연결할 수 없는 문제를 해결하는 방법

Golang의 웹 프레임워크인 Echo 프레임워크를 사용하여 분산 작업 스케줄링 구현 Golang의 웹 프레임워크인 Echo 프레임워크를 사용하여 분산 작업 스케줄링 구현 Jun 24, 2023 am 11:49 AM

Golang의 웹 프레임워크인 Echo 프레임워크를 사용하여 분산 작업 스케줄링 구현

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 Jun 13, 2016 am 10:23 AM

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决

Laravel 개발: Laravel Echo 및 Pusher를 사용하여 WebSocket 통신을 구현하는 방법은 무엇입니까? Laravel 개발: Laravel Echo 및 Pusher를 사용하여 WebSocket 통신을 구현하는 방법은 무엇입니까? Jun 13, 2023 pm 05:01 PM

Laravel 개발: Laravel Echo 및 Pusher를 사용하여 WebSocket 통신을 구현하는 방법은 무엇입니까?

See all articles