01 2015 档案

摘要:准备好好学习js了,js写的第一个排序先推荐一个js在线编辑工具,RunJS,还不错。冒泡排序var arr = [2,4,1,5,3];function handle(arr){ for(var i=0;iarr[j+1]){ var tmp=arr[j]; arr[j] = arr[... 阅读全文
posted @ 2015-01-22 19:39 tai君 阅读(200) 评论(0) 推荐(0)
摘要:先区别一下php中错误 与 异常的概念吧PHP错误:是属于php程序自身的问题,一般是由非法的语法,环境问题导致的,使得编译器无法通过检查,甚至无法运行的情况。平时遇到的warming、notice都是错误,只是级别不同而已。PHP异常:一般是业务逻辑上出现的不合预期、与正常流程不同的状况,不是语法... 阅读全文
posted @ 2015-01-19 19:26 tai君 阅读(5964) 评论(0) 推荐(0)
摘要:同事需要调用我开发的一个图片上传接口,我把接口文档以及调用示例全部给了他,结果他调不成功,向我请教。一步步调试,最终结果定位到他图片上传到本地时就失败了。打印出$_FILES数组,error提示给出的是7查看手册,是写入磁盘失败。首先想法是上传临时文件夹失败。去php.ini中查看临时文件夹,发现没... 阅读全文
posted @ 2015-01-16 20:34 tai君 阅读(262) 评论(0) 推荐(0)
摘要:学习SPL的时候,遇到了DirectoryIterator这个目录类,谢了一下遍历目录的方法。于是总结一下遍历目录的四种写法如下:getFileName(); echo "";}/* * 方法二:scandir函数,返回文件数组 */$files = scandir('E:\wamp\bin\php... 阅读全文
posted @ 2015-01-16 17:04 tai君 阅读(1088) 评论(0) 推荐(0)
摘要:php5.3已经开始支持延迟静态绑定。延迟静态绑定指的是在父类中获取子类的最终状态。在父类中,如果出现self关键字,被子类继承后,这个self值的还是父类而不是子类。如果在父类中出现了self关键字,并且子类继承了含有self的这段代码,那么需要考虑静态延迟绑定。在父类中使用static代替sel... 阅读全文
posted @ 2015-01-10 15:47 tai君 阅读(340) 评论(0) 推荐(0)
摘要:之前学习过内部排序的八大算法,也一一写过代码实现。其中堆排序的原理是将一颗二叉树初始化为堆依次将最后一个结点与堆顶结点交换。然后调整堆顶元素位置,重置堆。将二叉树初始化为堆可以看做从最后一个非叶子结点开始,依次调整子堆的堆顶元素,重置堆是指重置堆顶元素。这种算法的实现如下:= 0; $end--) ... 阅读全文
posted @ 2015-01-08 17:26 tai君 阅读(1238) 评论(0) 推荐(0)
摘要:感觉序列化和反序列化用得倒是比较少了,而json_encode和json_decode用得相对多,都是转化成串,进行入库、传输等。json更方便,但是序列化和反序列化结合这两个魔术方法使用倒还行a = 'hello';//反序列化时进行a值的修改动作 }}$m = new Test();$n = s... 阅读全文
posted @ 2015-01-08 11:17 tai君 阅读(312) 评论(0) 推荐(0)
摘要:PHP SPL是指 standard php library,php标准库。SPL提供了一系列的类和接口,使用这些类和接口,我们可以更加高效、优雅的使用php进行程序设计。从php5.0开始,已经支持spl。从5.3开始,SPL已经嵌入PHP内核,无需任何配置php提供了下列的数据结构类:SplDo... 阅读全文
posted @ 2015-01-07 19:57 tai君 阅读(296) 评论(0) 推荐(1)
摘要:先说一下深拷贝和浅拷贝通俗理解深拷贝:赋值时值完全复制,完全的copy,对其中一个作出改变,不会影响另一个浅拷贝:赋值时,引用赋值,相当于取了一个别名。对其中一个修改,会影响另一个PHP中, = 赋值时,普通对象是深拷贝,但对对象来说,是浅拷贝。也就是说,对象的赋值是引用赋值。(对象作为参数传递时,... 阅读全文
posted @ 2015-01-07 11:50 tai君 阅读(14130) 评论(1) 推荐(3)
摘要:最近由于使用php编写了一个脚本,模拟实现了一个守护进程,因此需要深入理解php中的垃圾回收机制。本文参考了PHP手册。在理解PHP垃圾回收机制(GC)之前,先了解一下变量的存储。php中变量存在于一个zval的变量容器中。结构如下:类型值is_refrefcountzval中,除了存储变量的类型和... 阅读全文
posted @ 2015-01-06 19:23 tai君 阅读(16418) 评论(4) 推荐(0)
摘要:先看下面的问题: 对于中间的那个问题,你的答案是什么呢?在今天之前,我的答案是会为b分配内存空间。因为我是这么理解的: &赋值的时候,视为一个变量定义了一个别名,增加了一个对内存空间的引用。改变其中一个,会影响其他的引用。而使用unset()时,只是断开了对变量内存空间的引用,内存空间... 阅读全文
posted @ 2015-01-05 18:21 tai君 阅读(2584) 评论(2) 推荐(2)
摘要:最近安装了一下xedug,并且学习了一下如何使用。安装xdebug的初衷是为了深入研究一下PHP的垃圾回收机制。Xdebug是一个开放源代码的PHP程序调试器(即一个Debug工具),可以用来跟踪,调试和分析PHP程序的运行状况。先说一下安装吧。我使用的php版本是5.3.3,windows 32 ... 阅读全文
posted @ 2015-01-05 17:06 tai君 阅读(1804) 评论(0) 推荐(0)