Как можно добавить значение в элемент массива, а затем увеличить?

У меня есть один массив:

$logins= array("login1", "login2", "login3"I;

У меня есть событие, где все логин (логин1, логин2, логин3) имеют доступ.

Теперь login1, login2, login3 могут кликать по событию неограниченное количество раз.

Я уменьшу доступ к событию максимум в 2 раза.

вот код:

function replaychargeClick($aseco, $command) {
global $replaycharge, $replaybills;$coppers = $replaycharge['coppers'];
$playerid = $command[0];
$login = $command[1];
$answer = $command[2].'';
$aseco->client->query('GetDetailedPlayerInfo', $login);
$player = $aseco->client->getResponse();
$nickname = $player['NickName'];
if ($answer == '234561') {
$aseco->client->query('GetCurrentChallengeInfo');
$thistrack = $aseco->client->getResponse();
$aseco->client->query('GetNextChallengeInfo');
$nexttrack = $aseco->client->getResponse();

// Check if already being replayed
if ($thistrack['FileName'] != $nexttrack['FileName']) {
//  Check for TMF server
if ($aseco->server->getGame() == 'TMF') {
// check for TMUF server
if ($aseco->server->rights) {
// check for TMUF player
if ($player['OnlineRights'] >= 0 ) {

// start the transaction
$message = 'You need to pay '.$coppers.' coppers to replay the track';
$aseco->client->query('SendBill', $login, $coppers, $message, '');
$replaybillid = $aseco->client->getResponse();
$replaybills[$replaybillid] = array($login, $nickname, $coppers);
} else {
$message = formatText($aseco->getChatMessage('UNITED_ONLY'), 'account');
$aseco->client->query('ChatSendServerMessageToLogin', $aseco->formatColors($message), $login);
}
} else {
$message = formatText($aseco->getChatMessage('UNITED_ONLY'), 'server');
$aseco->client->query('ChatSendServerMessageToLogin', $aseco->formatColors($message), $login);
}
} else {
$message = $aseco->getChatMessage('FOREVER_ONLY');
$aseco->client->query('ChatSendServerMessageToLogin', $aseco->formatColors($message), $login);
}
} else {
$message = '>$f00 This track is already being replayed';
$aseco->client->query('ChatSendServerMessageToLogin', $message, $login);
}
}

}

Так как я могу добавить счетчик для каждого входа?

-1

Решение

Если вы хотите сохранить счетчик для всех логинов, просто добавьте ключ в массив.

$loginsWithCount = array({
key: "login1,
count: 0
}, {
key: "login2,
count: 0
}, {
key: "login3,
count: 0
});

Теперь вы можете обновить счетчик, просматривая массив и находя правильный объект входа в систему и обновляя его счет. Для оптимизации вы можете создать хеш и сделать это.

$keyToUpdate = 'login1';
$countToUpdate = 10;

foreach ($array as $item) {
if ($item->key === $keyToUpdate) {
$item['count'] = $countToUpdate;
}
}
0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector