Ошибка PHP Notice: Undefined offset

177
01 октября 2018, 18:10

Помогите пожалуйста испрвить ошибки в коде. Сам код:

$text = file("logs-bot/history.txt");
$fp = fopen("logs-bot/history.txt", "w+");
$count = count($text);
$ips = array();
$counts = array();
$p = 0;
for($i=0;$i<=$count;$i++){
    $ip = substr($text[$i],0,-11);
    $length = strlen($ip);
    $time = substr($text[$i],$length-1,-1);
    $ip = substr($ip,0,-1);
    $key = array_search($ip, $ips);
    if($key === false){
        $ips[$p] = $ip;
        $counts[$p] = 0;
        $p= $p+1;
    }

Содержимое logs-bot/history.txt выглядит так:

91.246.146.133 1532814881
176.59.66.230 1532814882
212.3.130.255 1532814882
95.153.132.190 1532814882
5.58.58.73 1532814883
178.92.8.8 1532814885
46.211.159.112 1532814885
213.87.250.207 1532814886
46.53.176.194 1532814886
31.129.237.55 1532814886

Ошибка PHP Notice: Undefined offset указывает на строки:

$ip = substr($text[$i],0,-11);
$time = substr($text[$i],$length-1,-1);
Answer 1
$handle = fopen("logs-bot/history.txt", "r");
$result = array();
if ($handle) {
    while (($buffer = fgets($handle, 4096)) !== false) {
        $array = explode(' ', $buffer);
        if (isset($result[$array[0]])) {
            $result[$array[0]]++;
        } else {
            $result[$array[0]] = 1;
        }
    }
    fclose($handle);
}
var_dump($result);

Результат:

array(10) {
  ["91.246.146.133"] => int(1)
   ["176.59.66.230"] => int(1)
   ["212.3.130.255"] => int(1)
  ["95.153.132.190"] => int(1)
      ["5.58.58.73"] => int(1)
      ["178.92.8.8"] => int(1)
  ["46.211.159.112"] => int(1)
  ["213.87.250.207"] => int(1)
   ["46.53.176.194"] => int(1)
   ["31.129.237.55"] => int(1)
}
READ ALSO
Почта попадает в спам, как изменить?

Почта попадает в спам, как изменить?

Добавил обычную функцию отправки письма:

192
Вывод папок, файлов по порядку

Вывод папок, файлов по порядку

Как вывести папки и файлы в таком продяке- директория назад ПАПКИ - директория папок всех друг за другом ФАЙЛЫ -директория файлов всех друг...

174
Как узнать cart_id конкретного товара находящегося в корзине CMS Opencart?

Как узнать cart_id конкретного товара находящегося в корзине CMS Opencart?

Стоит задача создать вот такое оповещения о добавления товара в корзину!

242
Удалить отправленное сообщение viber rest api

Удалить отправленное сообщение viber rest api

Подскажите, пожалуйста, возможно ли каким-то образом удалить отправленное сообщение при viber rest api? Возможно, не до конца изучила документацию,...

173