0

2回以上、または3回以上$link投稿され$chatた回数をカウントして、禁止機能を呼び出そうとしています。$nick

私は真実ではないことを知っていることを試しましif (count(explode($link, $chat, $nick))>=3) {たが、私は選択肢がなく、まだPHP学習の始まりです.

前もって感謝します

4

1 に答える 1

0

あなたの $chat 文字列が完全にどのように見えるかわからないので、もっともらしい解決策のように思われるものを使用します。

$lines = explode("\n\r", $chat);
$links = array();
foreach ($lines as $line) {
    $nickAndLink = explode(':', $line) // assumes each line is made as "nick: text"
    $nick = $nickAndLink[0];
    $link = $nickAndLink[1];
    $link = trim($link) //Trim spaces and other spacing characters;
    if (!isset($links[$nick][$link])) {
        $links[$nick][$link] = 1;
    } else {
        $links[$nick][$link] += 1;
    }
    if ($links[$nick][$link] >= 3) {
        echo $nick . " is spamming";
    }
}

これは非常に効率的ではありませんが、私が持っている情報から思いつくことができる唯一のものです。それがあなたにアイデアを与えることを願っています。

于 2013-08-19T00:01:40.277 に答える