本文目录一览:
怎么用php编写加减乘除??
可以参考下面的代码:
?php
$a = 1;
$b = 2;
加法: $sum = $a + $b;
减法: $sum = $a - $b;
乘法: $sum = $a * $b;
除法: $sum = $a / $b;
扩展资料:
PHP的加密函数有crypt()、 md5() 和sha1() 这3种, 其中crypt() 用于单向加密, 所谓的单向加密就是将需要加密的内容进行加密之后, 无法将密文转换成为可读的内容, 因此单向加密的应用范围较狭窄, 一般用于用户名认证和密码输入等情况。
当用户进入系统时,只需要将密文口令输 入,经过系统验证与存储的口令一致, 即可通过。
sha1() 函数使用了SHA-1的散列算法,其原理与md5() 类似。
参考资料来源:百度百科-PHP (超文本预处理器)
php 如何计算时间
php计算时间的应用主要有如下几个:
echo "br***************用PHP打印出前一天的时间***************br";
echo date("Y-m-d ",strtotime(" -1 day"));//昨天
echo 'br';
echo date("Y-m-d ",strtotime(" +1 day")); //明天
echo "br********************输出当前时间*********************br";
echo date("Y年m月d日 l H:i:s A"); //2011年08月29日 Monday 04:52:25 AM
echo 'br';
echo date("y-n-j D h:i:s a"); //11-8-29 Mon 04:52:25 am
echo 'br';
echo date("Y年n月j日 l G:i:s a",strtotime("now"));//2011年8月29日 Monday 7:56:05 am
echo "br*****************两个日期之间的天数******************br";
$str1=strtotime("2007-02-08");
$str2=strtotime("now");
print_r (floor(($str2-$str1)/(3600*24)));
echo "br**********************倒计时*************************br";
$time1=strtotime("2012-7-18 17:30:00");
$time2=strtotime("now");
$sec=$time1-$time2;
$year=floor($sec/3600/24/365);//年
$temp=$sec-$year*365*24*3600;
$month=floor($temp/3600/24/30);//月
$temp=$temp-$month*30*24*3600;
$day=floor($temp/3600/24);//日
$temp=$temp-$day*3600*24;
$hour=floor($temp/3600);//小时
$temp=$temp-$hour*3600;
$minute=floor($temp/60);//分
$second=$temp-$minute*60;//秒
echo "距离培训毕业还有".$year."年".$month."月".$day."天".$hour."小时".$minute."分".$second."秒";
php中关于字符串运算的问题
PHP在运算时自动根据参加运算的量和运算符转换为一致类型,你的例子中$str会转换为int类型加。
当然,对于+1计算会自动转换为整数,如果是+1.0会转换为浮点数,同样的,对数值类型进行.运算也会转换为字符串,例如:
'abc' . 123
的结果会是字符串的abc123
关于PHP里面计算的问题
?php
$db_host = 'localhost'; //数据库主机
$db_user = 'tianchunli';//数据库用户帐户
$db_passw = '58816828'; //数据库帐户密码
$db_name = 'peixun189' ;//数据库名称
//连接数据库
$conn=mysql_connect($db_host,$db_user,$db_passw) or die("数据库连接失败!");
//设置字符集,如utf8和gbk等, 根据数据库的字符集而定
mysql_query("set names gb2312");
//选定数据库
mysql_select_db($db_name,$conn) or die('数据库选定失败!');
//执行SQL查询
$sql='select username,kemu,xuefei from baomingxinxi order by 1,2';
$result = mysql_query($sql) or die('数据库查询失败!');
$lastname='';
$sum_xuefei=0;
$cnt_kemu=0;
while($row=mysql_fetch_array($result)){
if ($lastname!=$row[0]){
if ($lastname!='') echo "共{$cnt_kemu}科,共计{$sum_xuefei}元br";
echo "{$row[0]}报了";
$sum_xuefei=0;
$cnt_kemu=0;
$lastname=$row[0];
}
echo "$row[1] $row[2]元,";
$sum_xuefei+=$row[2];
$cnt_kemu++;
}
if ($cnt_kemu!=0) echo "共{$cnt_kemu}科,共计{$sum_xuefei}元br";
mysql_free_result($result);
mysql_close($conn);
?
php里怎么计算标准差
计算方法如下:
/**
* 得到数组的标准差
* @param unknown type $avg
* @param Array $list
* @param Boolen $isSwatch
* @return unknown type
*/
public static function getVariance($avg, $list, $isSwatch = FALSE) {
$arrayCount = count($list);
if($arrayCount == 1 $isSwatch == TRUE){
return FALSE;
}elseif($arrayCount 0 ){
$total_var = 0;
foreach ($list as $lv)
$total_var += pow(($lv - $avg), 2);
if($arrayCount == 1 $isSwatch == TRUE)
return FALSE;
return $isSwatch?sqrt($total_var / (count($list) - 1 )):sqrt($total_var / count($list));
}
else
return FALSE;
}
php 的位运算总结
php的位运算很少会用到,但是用处很大,
在有些算法中会用到,在权限管理中也会经常用到,
对于理解计算机的世界也会有一定的帮助,所以得把这些重要但不常用的东西总结一下记录一下。
提到位运算,避不开的是二进制。
因为位运算是直接在内存做操作和运算,相较与直接拿两个变量做运算符肯定是更快的。
很多地方把二进制这玩意说得很晦涩,现在来以最简单的方式来总结一下,当然只算 int 范围内的数算了,超过了这个范畴程序员还不如拿这时间去学点别的。
说完以上总结,再来解释下什么是二进制,网上大把,
但只要记住,int范围内的数也就是我们大部分需要用到的数,都可以用二进制来表示。
我们生活中用到的计数方式为十进制,由个数位满10进1,
然后再开始重新计算,等十位满9再加一时,百位加一,十位归零。
二进制则只有两个数字来表示就是0和1,满2进1。
由32个位组成,虽然只有32个位但已满足了我们正常的需求了
比如说1转换为2进制原码,由于1是正数所以符号位为0,
原码反码补码都一个样。
1的原码:00000000 00000000 00000000 00000001
因手懒,太多0太丑用+拼接,'0* 8'代表8个0
2的原码:0* 8 0* 8 0* 8 0* 6 + 1 0,既然是二进制,
满2就得进1,最低位归0,向前加一。
再来解释下负数的原码反码和补码,就开始讲php的位运算了。
二进制复习完毕。下面开始讲讲php的位运算。
php一共有六种位运算,一种一种来讲。
可以这么理解,两个数的补码放在一起比较每个位(一共32个位),
可以得出另外一个数,这个数字的组成由比较的两位数字生成,
如果两个数的每个位数上的数字都等于1的话,
那得到的那个数的补码的同位为1,否则为0。
听着绕口,其实很简单,觉得还是比官网上的更容易让新手看懂
下面举例子:
首先来求-1和7的补码。7的原码就是补码。
两个补码都有了下面开始运算:
按照上面的说法, 每个位都有一样则 $a 的同等位则为1,刚好-1的补码和7的补码前面都不一样,就最后三位一样,所以刚好求得的 $a 的补码的最后三位是1而其他的都是0 ,刚好这个补码为正数,正好就是7。
其实就是和按位与相反,只要有1个为1,那就为1,如果都不为1,那就为0。
$a = -1|7 ;得出来的 $a 补码为32个1,但此时不能说 $a 就是-1,因为这只是补码,要转成原码再转成十进制数,补码-1,然后再翻转,再转出来,得到的其实也还是-1。
就是将这个数的补码全部翻转过来,包括符号位,0变1,1变0
取反的结果一定是整数变负数负数变正数,取正数的反时,
记得一定要从补码一步步转到原码再转成十进制数才是答案。
两个数的补码比较,同等位上的两数比较
,不一样时,则答案的补码的同位则为1,否则为0。
往左移符号位被挤走右边0补充,往右移动,符号位不动,
高位以符号位补充。二进制世界里往左移动其实是相当于乘以了2,
右移相当于除以了2。
不吹牛逼的说,这应该是互联网上最容易理解的php位运算的解释和二进制的解释了。
原文链接: php的位运算总结-PHP