php运算符
时间:2023-3-1 22:00 作者:wen 分类: PHP
<?php
/*运算符*/
/*1. 基本运算符 + - * / %
2. 赋值运算符 += -= *= /= %= =
3. 前置与后置运算符 ++ --
4. 字符串连接符 .
5. 关系运算[比较运算符] == === >= <= < >
6. 逻辑运算符[&&||!]
7.三元运算符(表达式)?a:b;
8.位运算[位与 位或 异或 取反 左移 右移]
计算机处理二进制是按补码来算的.
正数的原码,反码,补码都一样
负数人反码是在原码上取反,补码是在反码上加1*/
//&位与 同1为1
$intData1 = 12;
$intData2 = 3;
echo $intData1&$intData2;
/*
00001100
00000011
----------
00000000*/
//|位或 是要有1就为1
$intData1 = 12;
$intData2 = 3;
echo $intData1|$intData2;
/*
00001100
00000011
--------
00001111*/
//^异或 互斥为1
$intData1 = 12;
$intData2 = 3;
echo $intData1^$intData2;
/*
00001100
00000011
--------
00001111*/
//~取反 1为0 0为1
$intData1 = 12;
$intData2 = 3;
echo ~$intData1;
/*
00001100
--------
11110011
- 1
------------
11110010
~
------------
10001101
------------
-13*/
//<<左移 高位移出,低位补0
$intData1 = 12;
$intData2 = 3;
echo $intData1<<2;
/*
00001100
--------
00110000*/
//>>右移 低位移出,高位补符号位
$intData1 = 12;
$intData2 = 3;
echo $intData1>>2;
/*
00001100
--------
00000011*/
$intData1 = -12;
$intData2 = 3;
echo $intData1>>2;
/*
10001100
--------
11110011
--------
11110100
--------
11111101
--------
11111100
--------
00000011*/
//加密
function jiami($dada,$key){
return $dada^$key;
}
//解密
function jiemi($result,$key){
return $result^$key;
}
$key = md5('qwerasfzxcv');
echo $key;
echo '<hr/>';
$dada = 'hollo world';
$resu = jiami($dada,$key);
echo $resu;
echo '<hr/>';
echo jiemi($resu,$key);
?>
标签: PHP基础