- Автор темы
 - #1
 
Я создал скрипт, который записывает в файл название карты и количество раз ее появления (мониторинг серверов). Данный скрипт проверяет текущую карту, если ее нету в списке оно добавляет строку, если есть, то скрипт удаляет данную строку и вместо нее записывает точно такую же, только увеличивает на 1 количество раз.
Проблема вот в чем(показываю содержимое самого файла .txt) :
	
	
	
		
Вот сам скрипт:
	
	
	
		
То есть скрипт при прохождении по файлу (к примеру текущая карта "de_dust2"), видит совпадение и должен увеличить число (['zm_chaves2_click21',1],), а он иногда увеличивает, а иногда при совпадении повторяет строку
	
		
			
		
		
	
				
			Проблема вот в чем(показываю содержимое самого файла .txt) :
		Код:
	
	['zm_mansion_mba',3],
['zm_dust2snow_2011',1],
['zm_303',13],
['zm_3rooms',7],
['zm_nuke',9],
['zm_fdust2x2',2],
['zm_fdust2x2',2],
['zm_fdust2x2',2],
['zm_inferno',8],
['zm_china',20],
['zm_chaves2_click21',1],
['zm_chaves2_click21',1],
['zm_chaves2_click21',1],
['zm_chaves2_click21',1],
['zm_chaves2_click21',2],
['zm_chaves2_click21',1],
['zm_chaves2_click21',1],
['zm_chaves2_click21',1],
['zm_chaves2_click21',1],
['cs_italy32',11],
	Вот сам скрипт:
		Код:
	
	$map = "/* карта определяеться другим скриптом, но он 100% рабочий */";
$file_map = file("map/".$id.".txt");
            for ($a = 0; $a < count($file_map); $a++)
            {
                $count_map = substr($file_map[$a], 2);
                $count_map = explode("',", $count_map);
                if ($count_map[0] == $map)
                {
                    unset($file_map[$a]);
                    $map_count = substr($count_map[1], 0, -3);
                    file_put_contents("map/".$id.".txt", implode("", $file_map));
                    $map_count++;
                    file_put_contents("map/".$id.".txt", file_get_contents("map/".$id.".txt")."['".$map."',".$map_count."],\n");
                }
                else
                {
                    file_put_contents("map/".$id.".txt", file_get_contents("map/".$id.".txt")."['".$map."',1],\n"); //$id - это номер сервера
                }
            }
	То есть скрипт при прохождении по файлу (к примеру текущая карта "de_dust2"), видит совпадение и должен увеличить число (['zm_chaves2_click21',1],), а он иногда увеличивает, а иногда при совпадении повторяет строку
			
				Последнее редактирование: