Home > php教程 > php手册 > PHP写缓存

PHP写缓存

WBOY
Release: 2016-06-13 10:36:36
Original
805 people have browsed it

//写入缓存
   $menu_query = exequery( $connection, " SELECT ct.id as tid, ct.type_name , mb.id, mb.cookname,
       mb.price, mb.description, mb.pinyin FROM cook_type ct LEFT JOIN menubook mb ON ct.id = mb.cook_type WHERE
       mb.id = ".$cook_id);
   $menu_result = mysql_fetch_array( $menu_query );

   //echo "菜单id:".$cook_id.";分类id:".$menu_result[tid];exit;
   //本次菜单
   $row[mid] = $cook_id;
   $row[menu_name] = $cook_name;
   $row[description] = $description;
   $row[menu_price] = $cook_price;
   $row[pinyin] = ChangeToPinyin(iconv("utf-8","gb2312",$cook_name),1);
  
   if( file_exists( "./menubook.php") )
   {
    require_once( "./menubook.php" );
   }
  
  
   if( is_array( $menu_cache) && !empty( $menu_cache) )
   {
    $classnum = count( $menu_cache );
    $unmatchnum = 0;
    for ( $i=0; $i     {
     if( $menu_result[tid] != $menu_cache[$i][tid] )
     {
      $unmatchnum++;
      continue;
     }
     else //找到分类 , 继续寻找菜品的缓存是否存在
     {
      $cartenum = count( $menu_cache[$i][list]);
      $unmarrynum = 0;
      for ( $j=0; $j       {
       if ( $menu_cache[$i][list][$j][mid] != $cook_id )
       {
        $unmarrynum++;
         continue;
       }
       else //修改菜单
       {
        $menu_cache[$i][list][$j][menu_name] = $cook_name;
        $menu_cache[$i][list][$j][description] = $description;
        $menu_cache[$i][list][$j][menu_price] = $cook_price;
        $menu_cache[$i][list][$j][pinyin] = $row[pinyin];
       }
      }
     
      //新添加的菜单
      if( $cartenum == $unmarrynum )
      {
       $menu_cache[$i][list][] = $row;
      }
     }
    }
   
    //未找到分类
     if ( $unmatchnum == $classnum )
     {
      $type_row[tid] = $menu_result[tid];
      $type_row[type_name] = $menu_result[type_name];
      $type_row[list][0] = $row;
   
      $menu_cache[] = $type_row;
     
     }
   }
   else { //数组的生成
       $type_row[tid] = $menu_result[tid];
     $type_row[type_name] = $menu_result[type_name];
     $type_row[list][0] = $row;
  
     $menu_cache[] = $type_row;
    
   }
   //print_r( $menu_cache );
   //写入文件
   ob_start();
   var_export( $menu_cache );
   $content = ob_get_contents( );
   ob_end_clean();
  
   $filename = "menubook.php";
   $fp = fopen( $filename, "w" );
   fwrite( $fp, "" );
   fclose( $fp );

二、添加菜单,写入缓存

     $str=ChangeToPinyin(iconv("utf-8","gb2312",$cook_name),1);
     $query_cook_add="insert into menubook(cookname,price,cook_type,description,pinyin) values(".$cook_name.",".$cook_price.",".$cook_type.",".$description.",".$str.")";
     $cursor_cook_add=exequery($connection,$query_cook_add);
     $cook_id = mysql_insert_id();
    
     $menutype_query = exequery( $connection, " SELECT type_name FROM cook_type WHERE id = ".$cook_type);
     $menutype_result = mysql_fetch_array( $menutype_query );
    
    
   //本次菜单
   $row[mid] = $cook_id;
   $row[menu_name] = $cook_name;
   $row[description] = $description;
   $row[menu_price] = $cook_price;
   $row[pinyin] = $str;
  
   if( file_exists( "./menubook.php") )
   {
    require_once( "./menubook.php" );
   }
  
   if( is_array( $menu_cache) && !empty( $menu_cache) )
   {
    $classnum = count( $menu_cache );
    $unmatchnum = 0;
    for ( $i=0; $i     {
     if( $cook_type != $menu_cache[$i][tid] )
     {
      $unmatchnum++;
      continue;
     }
     else //找到分类 ,添加改产品菜品的缓存
     {  
        $menu_cache[$i][list][] = $row;
     }
     
    }
    if( $classnum == $unmatchnum ) //未找到分类
    {
      $type_row[tid] = $cook_type;
      $type_row[type_name] = $menutype_result[type_name];
      $type_row[list][0] = $row;
   
      $menu_cache[] = $type_row;
     
    }
   }
   
   else { //数组的生成
       $type_row[tid] = $cook_type ;
     $type_row[type_name] = $menutype_result[type_name];
     $type_row[list][0] = $row;
  
     $menu_c

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template