php中把数组写入到文件,再读取
之前看到很多开源项目,一些项目的配置信息一般都写在文件里,
有些是写到配置文件的常量里,有些是写到数组里了。
不过那些相对复杂些,数组的没有深入研究。常量的我大致看了下,
一般在修改的时候,比较复杂,首先你需要把配置文件全部读出来,
然后通过正则匹配,替换内容,然后再写入文件,
而我下面用的这个方法,相对比较简单,也比较容易,我贴下代码吧
if(isset($_POST['sub'])){ $cfg = array('contact'=>$_POST['contact']); //把数据存入数组 file_put_contents('./data/contact.cache',serialize($cfg)); //把数组序列化之后,写到contact.cache里, $this->redirect('other/contact');//跳转 } else{ $fp = fopen('./data/contact.cache','r');//读 $cf = unserialize(fread($fp,filesize('./data/contact.cache')));//反序列化,并赋值 $this->assign('cfg',$cf);//送到前台模板 $this->display('other/contact'); }