Я пытаюсь сделать сценарий. Важно то, что он всегда пишет в текстовом документе, поэтому я хочу посчитать, сколько раз он написал в этом документе, что-то вроде вычисления строк в БД.
Это возможно?
$myFile = "log.txt";
$OS = "It is running: ";
$ID = "System ID: ";
$Skip = "<br />";
$link = '<a href="';
$link2 = '/status.txt"> Click here to view if it is online</a>';
$fh = fopen($myFile, 'a') or die("can't open file");
$menu_text = $_POST['field1'];
$menu_text2 = $_POST['field2'];
if (empty($menu_text2)) {
echo "No Data Has Been Posted";
fclose($fh);
}
else {
$stringData = $OS . $menu_text . $Skip . $ID . $menu_text2 . $link . $menu_text2 . $link2 . $Skip;
fwrite($fh, $stringData);
fclose($fh);
print_r($menu_text2);
mkdir($menu_text2, 0777);
}
$file = fopen($myFile, "r");
$count = 0;
while($row = fgets($file)) {
if(strstr($row, "<br />") !== false)
$count ++;
}
echo $count;
Я вижу, ты пишешь <br />
в конце каждой строки. Если у вас нет другой переменной в $stringData = ...
буду иметь <br />
в них вы можете открыть файл и посчитать, сколько раз <br />
происходит.
Если бы вы могли <br />
(и вы могли бы как menu_text
а также menu_text2
пользовательский ввод), затем вы должны также добавить новую строку, а затем сосчитать строки в файле. Обратите внимание, что вам нужно будет прочитать весь файл, чтобы получить счетчик, который для больших файлов может не подойти.
Другая вещь, которую вы можете сделать, это просто сохранить счет в другом файле.