递归-----函数本身调用本身。每一个栈中的变量都是独立的,不受外部变量的影响,除非传参。这一点和Js不一样。

在一个php页面中要引用其他的php文件可以使用require,require_once或者include,include_once;

require引入的文件如果不存在则会报错,而include只会警告waring,程序可以继续运行。带有_once表明只会读取一次文件。

变量的地址,使用global可以引用外部的变量,使用unset()则可以删除一个变量;案例

在形参变量前面加上地址符&,则可以把函数内部变量的执行结果传到函数外面。

Js中的全局和局部变量:

 <script type="text/javascript">
var a=2;
function b(a){
//局部变量
a+=20;
alert(a);
}
b(a);
alert(a);
//22;
//传参--->> 2;
12 </script>
 /*$a=2;
function b(){
//global $a;
$a+=20;
//未定义
echo a;
}
b();
echo $a;*/
//22;
//和js里的全局变量有区别,php里面必须声明,否则只是局部变量

传参时,给参数设置默认值:

 //------默认值设置
function aa($a,$b=1){
$res=$a+$b;
return $res;
}
$e=10;
$f=100;
echo aa($e,$f);//第二个数值会默认代替;如果第二个值重新定义,则会取代默认值

二进制:只需要知道二进制三码之间的转换规则,以及位运算的规则,基本上没有什么难度。

二进制中的原码,反码,补码

位运算规则:

案例

案例

 echo ~5;
//-6
//分析步骤
//正数的原码,反码,补码都是一样的,所以先求出补码,正数的符号位以0开头
//00000000 00000000 00000000 00000101----》1*1+0*2+1*4=5
//11111111 11111111 11111111 11111010----》取反-----现在为负数的补码,需要转换为原码
//11111111 11111111 11111111 11111001----》转换为反码-1;
//10000000 00000000 00000000 00000110----》原码-----》0*0+1*2+1*4=-6; $a=-1>>2;
echo $a;
//0
//把二进制表示的-1向右移动2位,但是首先要算出负数的补码
//10000000 00000000 00000000 00000001----》原码
//11111111 11111111 11111111 11111110----》反码--(符号位不能变)
//11111111 11111111 11111111 11111111----》补码
//11111111 11111111 11111111 11111111----》从符号位后开始向右移动,用符号位1补齐---最后转换为原码
//11111111 11111111 11111111 11111110
//10000000 00000000 00000000 00000001---->>结果为-1 //最终结论:每向左移动一次乘以2,向右移动一次除以2;

PHP-----函数和二进制的更多相关文章

  1. PHP细节,PHP手册中常见的一句话:该函数是二进制安全的

    以下内容转自 http://wuxinjie.github.io/php-02/ 在看PHP手册的时候,经常看到一句话”该函数是二进制安全的”. 二进制安全是什么呢? 他是如何实现的? 二进制安全是什 ...

  2. mysql中用HEX和UNHEX函数处理二进制数据的导入导出

    读取数据并拼写sql语句,然后进行导入.具体方法为: (1)导出时采用HEX函数读取数据,把二进制的数据转为16进制的字符串: select HEX(binField) from testTable; ...

  3. Matlab常用函数:二进制和十进制转换,均值,方差

    文章目录 Size s=size(A) [r,c]=size(A) [r,c,m]=size(A) size(A,n) 二进制和十进制转换 dec2bin mean 均值 mean(a,1) mean ...

  4. [PHP] pow指数运算函数与二进制

    1.a的-2次方=(a分之一)的2次方2.-a的2次方 3次方 按照这个规则,负负得正,负正得负,正正得正,指数是偶数最终结果是正的,是奇数就是负的3.二进制转换十进制,0b开头是二进制 <?p ...

  5. php大力力 [049节] php函数implode()

    implode()[1]  函数返回一个由数组元素组合成的字符串. 注释:implode() 函数接受两种参数顺序.但是由于历史原因,explode() 是不行的,您必须保证 separator 参数 ...

  6. PHP常用函数大全

    usleep() 函数延迟代码执行若干微秒.unpack() 函数从二进制字符串对数据进行解包.uniqid() 函数基于以微秒计的当前时间,生成一个唯一的 ID.time_sleep_until() ...

  7. [转]SQL Server字符串处理函数大全

    select语句中只能使用sql函数对字段进行操作(链接sql server), select 字段1 from 表1 where 字段1.IndexOf("云")=1;这条语句不 ...

  8. mysql 函数(一)

    1.ascii() 查询ascii值,多个字符的情况下,显示左边第一个字符的ascii值 SELECT ASCII("abc"); 等同于 SELECT ASCII("a ...

  9. PHP implode() 函数 把数组元素组合为字符串

    http://www.w3school.com.cn/php/func_string_implode.asp PHP implode() 函数 PHP String 函数 实例 把数组元素组合为字符串 ...

  10. php数组函数,字符串,linux命令

    1>> Linux常用命令一. 文件目录操作命令1. ls命令    命令格式:ls [选项] [目录名]    命令功能:列出目标目录中所有的子目录和文件.2. 命令格式:cd [目录名 ...

随机推荐

  1. phpqrcode不能输出二维码

    phpqrcode不能输出二维码  注意 权限.....  注意 扩展 header('Content-Type: image/png'); include_once 'phpqrcode/qrlib ...

  2. C# 模拟鼠标移动与点击

    我们需要用到的mouse_event函数,位于user32.dll这个库文件里面,所以我们要先声明引用. [System.Runtime.InteropServices.DllImport(" ...

  3. C#的TreeView标记

    今天用到了TreeView控件,多次添加后发现内容是重复的,于是用到清除:this.myTreeView.Nodes.Clear(): 如果想在添加完节点后,默认全展开:this.myTreeView ...

  4. PHP检测移动设备类mobile detection使用实例

    目前,一个网站有多个版本是很正常的,如PC版,3G版,移动版等等.根据不同的浏览设备我们需要定向到不同的版本中.不仅如此,我们有时候还需要根据不同的客户端加载不同的CSS,因此我们需要能够检测浏览设备 ...

  5. ArGIS Server 服务的更新

    对于普通地图服务更新 [产品版本]:arcgis for server 10.1,10.1 sp1,10.2及以上 [问题分析]: 由于在10.1中地图服务的发布采用的是msd的形式,也就是虽然在Ar ...

  6. Android 线程的正确使用姿势

    进程优先级(Process Priority) 线程寄宿在进程当中,线程的生命周期直接被进程所影响,而进程的存活又和其优先级直接相关.在处理进程优先级的时候,大部分人靠直觉都能知道前台进程(Foreg ...

  7. Vcenter server 5.5安装部署

    1.安装VMware ESXi Server 虚拟主机安装方法请看本人博客 "实践记忆": http://www.cnblogs.com/zoulongbin/p/5896836. ...

  8. 个人对AutoResetEvent和ManualResetEvent的理解(转载)

    仅个人见解,不对之处请指正,谢谢. 一.作用 AutoResetEvent和ManualResetEvent可用于控制线程暂停或继续,拥有重要的三个方法:WaitOne.Set和Reset. 这三个方 ...

  9. Tomcat6.0+Jdk1.5+Axis1.3搭建java webservice环境,并使用c#调用该服务。

    java jdk:jdk1.5.0_17 下载网址:http://pan.baidu.com/s/1gdmAkgV tomcat 6.0 下载地址:http://tomcat.apache.org/d ...

  10. AJAX-----13HTML5中新增的API---FormData

    FormData 表单数据对象,这是在HTML5中新增的一个API,他能以表单对象做参数,自动的将表单的数据打包,当ajax发送数据是,发送FormData内的表单数据给后端即可 <!DOCTY ...