IT技术博客大学习 共学习 共进步
首页 / Zen Space [睿]
IT 2015-01-11 23:54:32 / 浏览 1,720

PHP中的NOP及为什么有这个opcode

NOP 是一个特殊的opcode,表示空操作,在很多地方存在,汇编中的NOP含义也一样, 机器指令中的空操作通常用来将内存地址进行对齐,以提高CPU访问内存的效率, GCC等编译器也会将特定的语句进行优化而产生空操作。

IT 2015-01-04 23:35:40 / 浏览 3,280

nginx中location的匹配和rewrite

最近在线上进行nginx规则的调整的时候遇到一个问题,发现在location匹配时候可能会踩到的一个坑。 location在匹配规则的时候匹配的是归一化之后的URL,比如多个斜杠或者URL中带".", ".."的都会被 归一化。 而在内部rewrite的时候新的URL地址是不会再次被归一化的。这种不一致如果没有留意可能会遇到问题。

IT 2014-12-30 12:35:28 / 浏览 12,280

好的API设计

最近在重构公司的一个交互中间件,在重新设计API及总体架构的时候思考了许多,那么什么样的API才算是一个设计良好的API呢?

IT 2014-12-30 12:32:49 / 浏览 3,940

多线程下的fork及写时复制导致的性能问题

贴吧目前使用的HHVM来运行PHP程序,HHVM采用的是多线程模型, 以前我们使用的是PHP-FPM,PHP-FPM采用的是多进程的模型。 我们通过一个我们上线遇到的问题来看看Linux的写时复制和多线程相关的问题。

IT 2011-03-22 23:47:24 / 浏览 3,720

复制SSH回话,避免多次密码输入

就当时记事吧. 这不是怎样配置ssh密钥避免密码输入的实例, 当然经常ssh登陆的你肯定也配置过了. 我们公司的内网环境比较特殊, 为了安全性做了各种认证, 联入网络需要准入一下, 准入需要使用密码+随即密码的方式认证, 是挺安全的, 可以对于我们来说其实很痛苦,每次都要输入一下密码,因为包含了随即密码,我们无法使用脚本来方便的准入. 我们联入公司的开发机需要通过一台特殊的服务器来将我们的登陆转发, 也就是登陆到中转机...

IT 2011-03-02 23:04:44 / 浏览 3,260

定制PHP语法获取PHP变量的变量名

上一篇”获取PHP变量名扩展的“文章中通过一个PHP扩展的方式,实现了获取变量的变量名实现. 这次将通过为PHP语言增加语法结构的方式来实现这样一个功能。 PHP的语法实现是通过lex以及yacc 实现的。 lex负责词法分析,yacc负责语法分析。

IT 2011-03-02 23:03:38 / 浏览 3,840

有趣的变量作用域-PHP中global和Javascript中的var关键字

如果还是同样的思路,结果可能是你的期望完全不一样的结果. 这里的var定义变量和php中global不是一样的东西, php中的global是会在运行时执行的.而Javascript中的var在运行之前就已经”处理”好了.在运行之前的”语法分析”(没有看过Javascript引擎的实现.姑且这么分把)过程中,multiply函数中出现了var a;则把变量a加到函数体内的”局部变量表”中了.在运行过程中并不会执行var a;这一句. 这也是Javascript”怪异”的地方.定义变量的位置并没有关系.所以在函数内定义局部变量最好放在函数体的前面.

IT 2011-02-23 22:30:31 / 浏览 3,560

怎样获取PHP变量的变量名之PHP实现

这个解决方法是用的PHP里的get_defined_vars()方法,该方法返回当前作用域内的所有变量信息.也是和$GLOBALS一样,以变量名 => 值的方式返回。

IT 2011-02-23 22:27:26 / 浏览 3,460

怎么样获取PHP变量的变量名之扩展实现

一直在考虑的一个PHP的问题: 怎么样获取PHP变量的变量名. 一直以来都没有好好的研究.最近断断续续的开始看PHP源代码.并尝试解决. 直到两星期前把问题都解决了才开始把这些东西都记下来.

IT 2011-02-23 22:26:27 / 浏览 4,800

让你的网站也像Gmail一样支持文件拖放上传-HTML5之File API

Gmail推出了支持拖拽的附件上传功能,试用了下还真不错,其实很久以前就在想能有直接拖拽附件的功能,多亏有了HTML5,Web应用越来越像客户端的应用了。 在好奇心驱使下,想了解一下Gmail到底是怎么做到的,了解了一下最新的HTML5 File API草案,这个接口主要提供的就是提供对文件对象的访问,别想歪了,这个接...

IT 2011-02-23 22:23:12 / 浏览 3,360

开启Mac OS X Snow Leopard的NTFS原生读写

在Mac OS X下一直使用MacFUSE和NTFS-3G来访问ntfs分区,这次装了Snow leopard 10.6.2之后出现fusefs.kext can’t load的错误,从官方得知目前macfuse在snow leopard下有问题,在网上看到这篇贴子提到Snow Leopard其实原生就支持NTFS分区的读写,真是个好消息。