摘要:
今天看到一个问题: select a.* from a where (a.id not in (NULL)); 这个sql语句会返回什么? 刚开始以为是返回所有item,但是实际运行下返回是返回empty set。 看了下手册: http://dev.mysql.com/doc/refman/5.0/en/working-with-null.html 判断一个字段是否是NULL只能使... 阅读全文
随笔档案-2013年07月
Android的Activity生命周期
2013-07-30 11:18 by 轩脉刃, 412 阅读, 收藏, 编辑
摘要:
Android的Activity就相当于Windows Form中的Form,它的创建和销毁也是有一个生命周期的。主要经过这么7个阶段: 创建Activity:onCreate() 启动Activity:onStart() 恢复Activity:onResume() 暂停Activity:onPause() 停止Activity:onStop() 重启Activity:onRes... 阅读全文
说说jsonp
2013-07-29 09:32 by 轩脉刃, 4099 阅读, 收藏, 编辑
摘要:
什么是jsonp jsonp充其量只能说是一种“方法”。它可以让页面从其他域中获取资料。 首先要知道的是同源策略,在javascript中使用http请求(ajax)是会受到同源策略的限制的。A网站的页面是不能在javascript中访问B网站的资源的。但是,对于这种希望A网站访问B网站的资源的需求怎么办呢?(跨域访问)。jsonp就出现了。 html中虽然说javascript... 阅读全文
PHP的pcntl多进程
2013-07-26 18:03 by 轩脉刃, 20740 阅读, 收藏, 编辑
摘要:
PHP使用PCNTL系列的函数也能做到多进程处理一个事务。比如我需要从数据库中获取80w条的数据,再做一系列后续的处理,这个时候,用单进程?你可以等到明年今天了。。。所以应该使用pcntl函数了。 假设我想要启动20个进程,将1-80w的数据分成20份来做,主进程等待所有子进程都结束了才退出: $max = 800000; $workers = 20; ... 阅读全文
谈谈不换行空格
2013-07-26 09:37 by 轩脉刃, 13425 阅读, 收藏, 编辑
摘要:
昨天工作中遇到了一个问题问题:php程序从数据库中取出变量$a(值为"car ws"),经过iconv转码从utf8到gb2312后,赋值给$b,结果判断语句$a == $b 竟然是false! 究其原因原来是这里的空格是不换行空格。 什么是不换行空格? 不换行空格(non-blocking space)也是一种空格,它和普通空格的区别在于在排版的时候表现不同。比如在word中,下面一段话在... 阅读全文
谈HTTP的KeepAlive
2013-07-23 05:05 by 轩脉刃, 14039 阅读, 收藏, 编辑
摘要:
为什么要使用KeepAlive?终极的原因就是需要加快客户端和服务端的访问请求速度。KeepAlive就是浏览器和服务端之间保持长连接,这个连接是可以复用的。当客户端发送一次请求,收到相应以后,第二次就不需要再重新建立连接(慢启动的过程),就可以直接使用这次的连接来发送请求了。在HTTP1.0及各种加强版中,是默认关闭KeepAlive的,而在HTTP1.1中是默认打开的。HTTP头是Connection: Keep-Alive要设置保持多少时间和连接使用:Keep-alive: 300KeepAlive是不是设置越长越好?并不是这样的。KeepAlive在增加访问效率的同时,也会增加服务器的 阅读全文
Android程序ToDoList增加配置项页面
2013-07-19 20:50 by 轩脉刃, 1612 阅读, 收藏, 编辑
摘要:
本文要做的事情就是在前面做的简单的ToDoList程序上增加一个配置项页面(Reference)。这个Reference页面也非常简单: 这个ToDoList现在有两个页面,主页面能填写待办事项,然后manu键弹出可以跳转到Reference页面,在Reference页面只有一个checkbox,来给用户确认是否要本地保存(具体的本地存储的功能没有具体实现),Reference页面还有两个... 阅读全文
谈Mysql索引
2013-07-17 08:31 by 轩脉刃, 1477 阅读, 收藏, 编辑
摘要:
myisam和innodb的索引有什么区别? 两个索引都是B+树索引,但是myisam的表存储和索引存储是分开的,索引存储中存放的是表的地址。而innodb表存储本身就是一个B+树,它是用主键来做B+树的key的。 因此innodb需要设置主键,如果没有的话,mysql会优先使用unique键做主键,如果没有unique的话,会生成一个隐含字段做主键。 innodb中的主键最好是要使用自增i... 阅读全文
Android程序ToDoList
2013-07-15 10:53 by 轩脉刃, 3818 阅读, 收藏, 编辑
摘要:
本文的目的是创建一个简单的ToDoList列表。 这个应用的功能是记录我的代办事项,简单到不需要本地存储,所有的代办事项都只是存储在内存中,就是只有程序打开的时候可以增加查看代办事项,当程序关闭的时候,代办事项就清空了。 代码在:https://github.com/jianfengye/Android_Works/tree/master/ToDoList 1 流程 流程和Windows Form... 阅读全文
PHP的语言构造器
2013-07-12 23:07 by 轩脉刃, 1207 阅读, 收藏, 编辑
摘要:
isset和empty看起来像是函数,我们也经常把它当作函数一样使用,但是实际上,它们是语言构造器。 php中的语言构造器就相当于C中的预定义宏的意思,它属于php语言内部定义的关键词,不可以被修改,也不可以被禁用。 php中的函数就不一样了,它是函数,在执行的时候会被解析,然后传入参数计算。 所以函数的执行效率没有语言构造器高 比如我们判断一个array中是否包含一个key,使用isse... 阅读全文
nginx配置client_body_temp_path
2013-07-12 22:47 by 轩脉刃, 13687 阅读, 收藏, 编辑
摘要:
http://wiki.nginx.org/HttpCoreModule 中写道: 这里的client_body_temp_path是制定post上传的$_FILES上传的文件地址 后面的level1,2,3是什么意思? 因为如果所有上传的文件都放在一个文件夹下,不仅很容易文件名冲突,并且容易导致一个文件夹特别大。 所以有必要创建子目录 这里的level1,2,3如果有值就代表存在... 阅读全文
Android众说纷纭分辨率
2013-07-10 09:15 by 轩脉刃, 1662 阅读, 收藏, 编辑
摘要:
Andoid最被人诟病的就是显示屏的各种不同尺寸和不同分辨率。由于Android厂商的纷繁多样,导致出现了不同尺寸和不同分辨率的手机,指示开发者需要兼容各种手机屏幕。本文想学习的就是Android的显示屏幕的各种名词。 打开手机参数,会看到这样的数据 尺寸 尺寸指的是屏幕对角线的长度。以英寸作为度量单位。 分辨率 分辨率指的是在长和宽上各有多少像素。用这个能知道宽高比,一般如果宽高比... 阅读全文
Android初识Helloworld
2013-07-09 09:44 by 轩脉刃, 8829 阅读, 收藏, 编辑
摘要:
在Eclipse+ADT中创建HelloWorld非常简单,直接按照导航下一步就可以了。本文重点不在如何创建,而在理解HelloWorld项目的文件。 HelloWorld的目录结构有: src:存放应用程序的逻辑代码,这里面的代码是人工写的 gen:存放资源代码,这里面的代码是自动生成的 assets:存放mp3等视频资源 bin:生成的可执行的二进制文件目录 libs:引用到的... 阅读全文
Android从零开始
2013-07-08 10:14 by 轩脉刃, 8068 阅读, 收藏, 编辑
摘要:
Android开发环境的安装 1 IDE Android可以使用开发的IDE有Eclipse 或者 Android Studio。Android Studio还处于v 0.1.x版本,是early access preview。所以我还是选择Eclipse + ADT的方法开发。 其实没有什么复杂,官网已经为开发者做了一个开发环境集成包(ADT Bundle)。ADT是Android Dev... 阅读全文
PHP使用APC获取上传文件进度
2013-07-05 12:00 by 轩脉刃, 5876 阅读, 收藏, 编辑
摘要:
今天发现使用PHP的APC也能获取上传文件的进度。这篇文章就说下如何做。 安装APC 首先安装APC的方法和其他PHP模块的方法没什么两样,网上能找出好多 phpinfo可以看到APC的默认配置有: apc.rfc1867 看apc.rfc1867这个配置项: http://cn2.php.net/manual/en/apc.configuration.php#ini.apc.rf... 阅读全文
mmap学习
2013-07-04 10:17 by 轩脉刃, 3901 阅读, 收藏, 编辑
摘要:
内存页: Linux是以页为单位来管理物理内存的,一页大小一般等于4096字节。页容量越大,系统中可能存在的内存碎片就越多。 mmap将一个磁盘上的文件或者对象映射进内存。文件被映射到多个页上,如果文件的大小不是所有页的大小之和,最后一个页不被使用的空间将会清零。 当使用mmap映射文件到进程后,就可以直接操作这段虚拟地址进行文件的读写等操作,不必再调用read,write等系统调用。 采... 阅读全文
Mysql的优化一则
2013-07-02 10:51 by 轩脉刃, 1404 阅读, 收藏, 编辑
摘要:
目的在于这么一个sql语句: SELECT w.* FROM wallpaper w inner join wallpaper_category_relation r ON w.wallpaper_id = r.wallpaper_id WHERE (r.category_level1_id=39 AND w.is_online = 1) ORDER BY w.online_time DES... 阅读全文
PHP 5.5 新特性
2013-07-01 10:21 by 轩脉刃, 27023 阅读, 收藏, 编辑
摘要:
PHP5.5 前不久前刚刚发布,里面的新特性有什么?官方文档在这里: http://www.php.net/manual/zh/migration55.new-features.php 1 生成器 yield关键字 yield的中文文档在这里:http://php.net/manual/zh/language.generators.overview.php 查看文档,能知道yield的一个... 阅读全文