微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php学习之运算符相关概念

<div class="codetitle"><a style="CURSOR: pointer" data="43920" class="copybut" id="copybut43920" onclick="doCopy('code43920')"> 代码如下:

<div class="codebody" id="code43920">
<?PHP
/运算符号(PHP)操作符号

按运算符号功能分为:
一、算术运算符 + - / % ++ --
二、字符串运算符 . 连接运算符
三、赋值运算符 = += -= = /= %= .=
四、比较运算符 > < >= <= == === != <> !==
比较运算符---条件运算符---关系运算符
比较后的结果只有一种:boolean true false
=== 比较时不仅要求内容相同,也要求类型相同
!== 比较时内容不相同,也要求类型不相同
五、逻辑运算符 &&或and ||或or !或not
逻辑运算符只能操作bool型的值,返回的也是bool型的值
六、位运算符 & | ^ ~ << >> >>>
七、其他运算符 ? : `` @ => -> :: & $
用来执行操作系统内核 <BR>* @ 用来<a href="https://www.jb51.cc/tag/pingbi/" target="_blank" class="keywords">屏蔽</a>掉<a href="https://www.jb51.cc/tag/cuowu/" target="_blank" class="keywords">错误</a>信息 <BR>* 建议使用“()”改变表达式的优先级别 <BR>* <BR>* % 有两个目的:整除运算;控制范围,不要用小数,也不要用负数 <BR>* % 会吧运算符两边的数转为整数后再进行整除求余。 <BR>*/ <BR>//用 %符号判断闰年 <BR>$year=2011; <BR>if(($year%4==0 && %year%100!=0) || $year%400=0) <BR>{ <BR>echo "run nian"; <BR>} <BR>else <BR>{ <BR>echo " not run nian"; <BR>} <BR>// ++ --符号的使用 <BR>$a=10; <BR>$a++; //$a=$a+1; 先用变量,再自增1 <BR>++$a; //$a=$a+1; 先自增1,在用变量 <BR>$a--; //$a=$a-1; 先用变量,再自减1 <BR>--$a; //$a=$a-1; 先自减1,再用变量 <BR>echo $a; //结果为10 <BR>//++ -- 运算的区别 <BR>$a=10; <BR>$b=$a++;//b=10,a=11 <BR>$c=--$b;//c=9,b=9 <BR>$d=$c++ + ++$c; //d=20,c=11 <BR>$e=$d-- - --$d; //d=18,e=2 <BR>echo $d; <BR>//字符串运算符 . 的使用 <BR>$name="tom"; <BR>$age=27; <BR>$height=1.75; <BR>echo "我的名字是:{$name}我的年龄是:{$age}我的身高是:{$height}米<br>"; <BR>echo '我的名字是:'.$name.'我的年龄是:'.$age.'我的身高是:'.$height.'米'.'<br>'; <BR>echo "\$age=".$age; //$age=27 <BR>echo "我的名字是:{$name}我的年龄是:{$age}我的身高是:{$height}米<br>";//赋值运算符的使用 <BR>$a=10; <BR>$a+=10; //$a=$a+10; <BR>$a-=10; //$a=$a-10; <BR>$a*=10; //... <BR>$a/=10; //... <BR>$a%=10; //$a=$a%10; <BR>$a.="abc";//$a=$a."abc"; <BR>echo $a; <BR>$str='<table&gt;'; <BR>$str.='<tr&gt;'; <BR>$str.='<td&gt;'; <BR>$str.='</td&gt;'; <BR>$str.='</tr&gt;'; <BR>$str.='</table&gt;'; <BR>echo $str;//<a href="https://www.jb51.cc/tag/shuchu/" target="_blank" class="keywords">输出</a><a href="https://www.jb51.cc/tag/yige/" target="_blank" class="keywords">一个</a>表格 <BR>//比较运算符 <BR>var_dump(15>6);//返回 bool(true) <BR>$a=15; <BR>if(15==$a) <BR>{ <BR>echo "a=15"; <BR>} <BR>else <BR>{ <BR>echo "a!=15"; <BR>} <BR>//逻辑运算符的使用 <BR>var_dump(true && true);//true <BR>var_dump(true && false);//false <BR>var_dump(true || false);//true <BR>var_dump(!true);//false <BR>var_dump(!false);//true <BR>//判断<a href="https://www.jb51.cc/tag/yonghuming/" target="_blank" class="keywords">用户名</a>密码 <BR>$username="admin"; <BR>$password="123456"; <BR>$email="290080604@qq.com"; <BR>if($username=="admin" && $password="123456") <BR>{ <BR>echo "<a href="https://www.jb51.cc/tag/yonghuming/" target="_blank" class="keywords">用户名</a><a href="https://www.jb51.cc/tag/mimazhengque/" target="_blank" class="keywords">密码正确</a>"; <BR>} <BR>if($username=="" || $password=="" || $email=="") <BR>{ <BR>echo "<a href="https://www.jb51.cc/tag/yige/" target="_blank" class="keywords">一个</a>都不能为空"; <BR>} <BR>//位运算符 <BR>$a=20; //00010100 <BR>$b=30; // 00011110 <BR>/* <BR>* 20 00010100 <BR>* 30 00011110 & <BR>*----------------------------------- <BR>* 00010100 <BR>* <BR>*/ <BR>$c=$a & $b; <BR>echo $c; <BR>/*补充,& | 也可以用做逻辑运算 <BR>* &&和||的 短路问题: <BR>* &&在作运算时,如果前面的数为false,则后面是否为true,整个表达式都为false,所以就不去执行后面的操作数; <BR>* ||在作运算时,如果前面的数为true,则后面的数是否为false,整个表达式都为true,所以就不去执行后面的操作数; <BR>* 然而,& 或者 | 在作运算时,两边都会被执行 <BR>*/ <BR>$a=10; <BR>if($a>5 || $a++<100){} <BR>echo $a;//<a href="https://www.jb51.cc/tag/shuchu/" target="_blank" class="keywords">输出</a>10 <BR>$b=10; <BR>if($b>5 | $b++<100){} <BR>echo $b;//<a href="https://www.jb51.cc/tag/shuchu/" target="_blank" class="keywords">输出</a>11 <BR>/* <BR>位的概念:<a href="https://www.jb51.cc/tag/yige/" target="_blank" class="keywords">一个</a>位是由8个二进制数组成的(例00000000), <BR><a href="https://www.jb51.cc/tag/yige/" target="_blank" class="keywords">一个</a>字节由8个位组成,那么就有32个二进制数。 <BR>原码:最高位 用0表示正数,1表示负数 <BR>+7 00000111 <BR>-7 10000111 <BR>反码:<a href="https://www.jb51.cc/tag/yige/" target="_blank" class="keywords">一个</a>数如果为正,则它的反码与原码相同; <BR><a href="https://www.jb51.cc/tag/yige/" target="_blank" class="keywords">一个</a>数如果为负,则符号位为1,其余各位是对原码取反; <BR>+7 00000111 <BR>-7 11111000 <BR>+0 00000000 <BR>-0 11111111 <BR>补码:<a href="https://www.jb51.cc/tag/yige/" target="_blank" class="keywords">一个</a>数如果为正,则它的补码与反码与原码相同 <BR><a href="https://www.jb51.cc/tag/yige/" target="_blank" class="keywords">一个</a>数如果为负,则它的补码=反码+1,去掉最高位的溢出位 <BR>-7 原码 10000111  反码11111000 <BR>+1 <BR>补码11111001 <BR>已知<a href="https://www.jb51.cc/tag/yige/" target="_blank" class="keywords">一个</a>负数的补码,把它转换为十进制数。 <BR>1.先对各位取反 <BR>2.将其转换为十进制数 <BR>3.<a href="https://www.jb51.cc/tag/jiashang/" target="_blank" class="keywords">加上</a>负号,再减去1。 <BR>例:补码11111010 <BR>取反00000101 <BR>4+1=5 <BR>-5-1=-6 <BR>位运算符: <BR>& 按位与 |按位或 ^按位异或 ~按位取反 <BR>例: 按位与 01101101 <BR>&00110111 <BR>00100101 <BR>结论:只有1 1为1。 <BR>按位或 01101101 <BR>|00110111 <BR>01111111 <BR>结论:只有0 0为0。 <BR>按位异或 01101101 <BR>^00110111 <BR>01011010 <BR>结论:只有1 0或0 1时为1。(也可以理解为处于不同状态为1(真)) <BR>按位取反 ~00110111 <BR>11001000 <BR>结论:将0变1,1变0 <BR>移位运算符: <BR>左移:<< 带符号右移:>> 无符号右移:>>> <BR>例:数 x x<<2 x>>2 x>>>2 <BR>17 00010001 01000100 00000100 00000100 <BR>-17 11101111 10111100 11111011 00111011 <BR>结论:正数左右移动都补0,负数左移补0,带符号右移补1,不带符号补0 <BR>*/ <BR>//其他运算符的运用 <BR>$a=10; <BR>$b=$a>5 ? $a : 5;//三元运算符,如果成立$b=$a否则$b=5 <BR>echo $b; <BR>//用来执行操作系统shell命令
$str=ipcon<a href="https://www.jb51.cc/tag/fig/" target="_blank" class="keywords">fig</a> /all;
echo '
'; 
echo $str;
echo '
';
?>

原文地址:https://www.jb51.cc/php/27906.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐