public function testSerializeCondition() { $this->assertEquals('1', ActiveRecordCacheTags::serializeCondition(1)); $this->assertEquals('{"A":1,"B":2}', ActiveRecordCacheTags::serializeCondition(['A' => 1, 'B' => 2])); $this->assertEquals('{"B":2,"A":1}', ActiveRecordCacheTags::serializeCondition(['B' => 2, 'A' => 1])); }
/** * Cached analogue \yii\db\ActiveRecord::findAll() * @param mixed $condition * @param int $cacheTtl * @return null|\yii\db\ActiveRecord[] */ public static function cachedFindAll($condition, $cacheTtl = 86400) { return self::cachedFind($condition, static::class . ':all:' . ActiveRecordCacheTags::serializeCondition($condition), ActiveRecordCacheTags::getCommonTag(static::class), function ($condition) { return static::findByCondition($condition)->all(); }, $cacheTtl); }