0 and `delete` = 0 union all select data from eff_users where uid = ? and `delete` = 0'; $iData = Db::getColumn($q, [$userId, $userId]); $params = []; foreach ($iData as $datum) { foreach (explode('|', $datum) as $inner) { [$a, $b] = explode('=', $inner); if (strpos($a, 'add') !== false || strpos($a, 'sv') !== false || $showAll) { if (isset($params[$a])) { $params[$a] += $b; } else { $params[$a] = $b; } } } } return $params; } /** Данные для отрисовки логина и полосок жизни\маны. * @param User $u * @return object */ public static function getLoginHpManaBars(User $u): object { $hpNow = floor($u->stats['hpNow']); $hpAll = $u->stats['hpAll']; $mpNow = floor($u->stats['mpNow']); $mpAll = $u->stats['mpAll']; //floor(120 / 100 * ($hpNow / $hpAll * 100)); // ?????? $ph = ($hpAll > 0 && $hpNow > 0) ? floor(120 / $hpNow / $hpAll) : 0; $pm = ($mpAll > 0 && $mpNow > 0) ? floor(120 / $mpNow / $mpAll) : 0; return (object)[ 'uid' => $u->info['id'], 'login' => $u->microLogin($u->info['id']), 'hpbarwidth' => $ph, 'mpbarwidth' => $pm, 'hpbartext' => ' ' . $hpNow . '/' . $hpAll, 'mpbartext' => ' ' . $mpNow . '/' . $mpAll, 'divstyle' => $pm === 0 ? ' margin-top:13px;' : '', 'hasmana' => $mpAll > 0, ]; } }