Home  >  Article  >  Backend Development  >  PHP write cache_PHP tutorial

PHP write cache_PHP tutorial

WBOY
WBOYOriginal
2016-07-13 17:38:10784browse

//写入缓存
   $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<$classnum; $i++ )
    {
     if( $menu_result[tid] != $menu_cache[$i][tid] )
     {
      $unmatchnum++;
      continue;
     }
     else //找到分类 , 继续寻找菜品的缓存是否存在
     {
      $cartenum = count( $menu_cache[$i][list]);
      $unmarrynum = 0;
      for ( $j=0; $j<$cartenum; $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<$classnum; $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

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/486517.htmlTechArticle//写入缓存 $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...
Statement:
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