public static function viewPhoto($photo_id) { if (!Yii::$app->user->isGuest) { $cookies_req = Yii::$app->request->cookies; $cookies_res = Yii::$app->response->cookies; $photo_views = $cookies_req->getValue('photo_views'); $photo_views = explode('|', $photo_views); if (!in_array($photo_id, $photo_views)) { $photo_views[] = $photo_id; $cookies_res->add(new Cookie(['name' => 'photo_views', 'value' => implode('|', $photo_views), 'expire' => time() + 86400 * 30])); Photo::updateViews($photo_id); Rating::view($photo_id, Rating::PHOTO); } } }