zoukankan      html  css  js  c++  java
  • 检查两个多维数组 是否一致

        //检查两个多维数组 是否一直
      public function foo($arr, &$rt , $key='' ,$i=0) { if (is_array($arr)) { foreach ($arr as $k=>$v) { if (is_array($v)) { $this->foo($v ,$rt ,$k ,$i); } else { $rt[$key.'->'.$k.$i] = $v; } $i++; } } return $rt; }


        /**
         * 商品信息缓存一致性检查
         * @param $productId
         * @return bool
         */
        public function checkProductAttach($productId)
        {
            $getAttach = $this->productService->getAttach($productId);

            $getProductAttach = $this->productService->getProductAttach($productId);

            if($getProductAttach == false){
                Yii::$app->dataCache->getRedis()->del(['PRODUCT_ATTACH', $productId]);
                return true;
            }
            $isSame = $this->isSame($getAttach ,$getProductAttach );

            $arr = [];
            $arrCache = $this->foo($getAttach,$arr);
            $arrService = $this->foo($getProductAttach,$arr);

            $result = ['isSame'=>$isSame,'diff'=>array_diff($arrService, $arrCache)];

            if($isSame==false){
                Yii::getLogger()->log(['errorkey' => 'RedisCheckError:'.$productId , 'errorvalue' => json_encode($result['diff'])], Logger::LEVEL_ERROR);
            }
            return $result;
        }
  • 相关阅读:
    Spring>autoWire
    hibernate>多对多关联映射
    Hibernate>一级缓存
    Hibernate>component映射和复合主键映射
    Struts2>类型转换
    hibernate>继承
    hibernate>悲观锁和乐观锁
    Spring>Bean的作用域
    Struts2>defaultactionref
    数据库的隔离级别
  • 原文地址:https://www.cnblogs.com/-mrl/p/6438889.html
Copyright © 2011-2022 走看看