PHP面向对象开发api接口

1、json_encode() 将数组转换成json格式,且该函数仅支持utf8格式的数据。
2、iconv(‘utf8’,'gbk',$data) ; //将utf8格式转换成gbk数据。
//files.php
/**

  • 生成缓存文件、删除、读取缓存的操作封装

  • */
    class File {
    private $_dir;

    const EXT = '.txt';

    /**

    • 初始化文件存储位置

    • /
      public function __construct() {
      $this->_dir = dirname(FILE) . '/files/';
      }
      /
      *

    • param $key 缓存文件名称

    • param $value 缓存文件的值

    • */
      public function cacheData($key, $value = '') {
      $filename = $this->_dir . $key . self::EXT;

      if($value !== '') { // 将value值写入缓存
      if(is_null($value)) {
      return @unlink($filename);
      }
      $dir = dirname($filename);
      if(!is_dir($dir)) {
      mkdir($dir, 0777);
      }
      return file_put_contents($filename,json_encode($value));
      }

      if(!is_file($filename)) {
      return FALSE;
      }
      /*

      • 定时删除缓存文件
      • */
        // $contents = file_get_contents($filename);
        // $cacheTime = (int)substr($contents, 0 ,11);
        // $value = substr($contents, 11);
        // if($cacheTime !=0 && ($cacheTime + filemtime($filename) < time())) {
        // unlink($filename);
        // return FALSE;
        // }
        return json_decode(file_get_contents($filename),true);

    }
    }

//test.php
require_once ('./file.php');
$data=array(
'code' =>200,
'message'=>'数据返回成功',
'data'=>array(
'name'=>'lili',
'age'=>26
)
);

$file=new File();
if($file->cacheData('index_test_cache')){
var_dump($file->cacheData('index_test_cache'));
echo "success";
}else{
echo false;
}

你可能感兴趣的:(PHP面向对象开发api接口)