php touch函数的使用以及问题

php日记 1 Comment

php touch函数是一个有趣的函数
php touch函数用法为:touch($filename);
这个语句会发生什么?
1.如果$filename 不存在,则创建一个空文件,命名为$filename
注意:这份空文件的编码是比较奇怪的,即便你的php header设定成某个编码 utf8 或者gbk,它是不理睬你的。
所以我觉得拿来创建未来需要读取内容的文件是不合适的,比如你用touch(’test.txt’),生成test.txt ,在后续程序中你写入了数字,中文,英文,等你再读test.txt出来,会发现跟你想要的是两回事,虽然看起来你写的程序好像没什么问题,就是得不到你想要的值,问题就出在编码上。(当然你用覆盖的方式继续使用倒是没什么问题,你用’ab+’类似这样添加的方式进行会出现问题。)
我是没有找到如何指定php touch 生成一定目标的编码0大小文件,你找到一定要告诉我啊。
php touch创建生成的文件拿来做”标志位”我觉得是合适的,比如你touch(’visit.lock’)这样生成visit.lock文件之后,你可以用file_exits 去判断如果文件存在则干嘛干嘛,如果不存在则干嘛干嘛。

2.如果$filename存在
php touch 会改变$filename的什么值呢?php touch会改变$filename的最后访问时间。注意是访问时间,不是创建这份文件的时间。这个功能可以让你做一些时间间隔的限制动作,比如这句话(time()-fileatime($filename)
意思是从上次访问这份$filename以后,已经过了多少时间?比如这样
if((time()-fileatime($filename) >600) echo ‘距离上次访问这份文件,已经过了10分钟’;

我还是挺常用这个函数的,就是若是能解决第一个问题就好了。
此处留下笔记…

应该选什么样的php框架来学习呢

php日记 6 Comments

写了一阵子php,感觉应该很多代码是重复的,于是无意中看到thinkphp,对于php框架就有点好奇了
再百度一下发现,还有一个php框架: fleaphp,两个框架对比来看,
fleaphp要比thinkphp成熟点,至少你能看见各种各样的应用。而且貌似文档方面比较完备,我估计学习上会得到不少帮助。但是,他们居然已经开始开发另外一个框架qeephp,不得不让我有点犹豫,显然他们开发fleaphp到现在遇到了比较大的困难,正像他们说的,由于老版本的限制,以及兼容php4的考虑,束缚了他们后续的开发,虽然他们说继续进行fleaphp的开发,然则我认为只是进行了bug修补工作也不定。以上纯属猜测。
至于thinkphp,我就觉得他太年轻,出来时间比较短,应用方面不是很多,最主要是我感觉文档太少,但是我感觉他有一些独特的特性值得一看

犹豫啊,,,,花了时间,希望能有收获。
我就是希望自己能开发一些比较小的应用web就可以了,比如一般的小的商店,小的社区,小的博客,小的论坛
呵呵,什么都是小巧而强壮的,就够了。不以新浪那样的大站为目标,呵呵。

罗嗦了半天,真希望有过来人指点一下。。。

Icons by N.Design Studio. Designed By Ben Swift. Powered by WordPress and Free WordPress Themes
Entries RSS Comments RSS Log in