[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Как обрезать лишнее и вывести из TXT в PHP>HTML
Страницы: 1, 2
greck
Здравствуйте!
Есть два файла Monitor.php и whazzup.txt

Monitor.php
[php]
<?php
$data = file("whazzup.txt");
for($i=8;$i<count($data);$i++) {
$line = explode(":",$data[$i]);
echo "Позывной: " . $line[0] . ", Имя " . $line[2] . ", Тип в/с " . $line[9], "<br>";
}
?>

whazzup.txt
[code]
![DateStamp]28/06/2013 16:26
!GENERAL
VERSION = 1
RELOAD = 1
UPDATE = 20130628162635
CONNECTED CLIENTS = 1
CONNECTED SERVERS = 15682
!CLIENTS
AAR666:AAR666:SANYA BEST UUEE:PILOT::55.966810:37.387630:639:0:T/B738/F:470:UUEE:5000:URMM:GBS:1:1:1200:0:40:0:I:2709:0:0:0:0:0:::WP1 D145R D298G:::::::20130628161653
AAR666:AAR666:SANYA BEST UUEE:PILOT::55.966810:37.387630:639:0:T/B738/F:470:UUEE:5000:URMM:GBS:1:1:1200:0:40:0:I:2709:0:0:0:0:0:::WP1 D145R D298G:::::::20130628161653
AAR666:AAR666:SANYA BEST UUEE:PILOT::55.966810:37.387630:639:0:T/B738/F:470:UUEE:5000:URMM:GBS:1:1:1200:0:40:0:I:2709:0:0:0:0:0:::WP1 D145R D298G:::::::20130628161653
!SERVERS
GBS:95.84.228.66:Russia:Russia:1

Как обрезать текст чтобы не выводились последние две строки
И как вывести из переменных в DIV?
Игорь_Vasinsky
Цитата
Как обрезать текст чтобы не выводились последние две строки

считать файл в массив - удалить 2 последних элемента, вывести

Цитата
И как вывести из переменных в DIV?

а где он в коде?

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
greck
Как вывести в div я разобрался просто переменную надо вставлять до фигурной скобки } а я вставлял после, теперь перенёс скобку в самый конец файла php.

На счёт обрезки 2х последних элементов, что только не пробовал (в меру моих познаний в PHP, которых не так много) ну не получается.

Файл whazzup.txt динамически изменяется, тоесть чем больше народу подключенно на сервер тем больше строк.
Три одинаковых строки это я на время настройки скрипта прописал, скрипт впринцепе выводит так как мне нужно но цепляет строки:

!SERVERS
GBS:95.84.228.66:Russia:Russia:1

и как от них избавится я не знаю и для этого и обратился за помощью сюда на форум.
Как то так.

Если кто приведёт пример буду очень благодарен.



<?php
$data = file("whazzup.txt");
for($i=8;$i<count($data);$i++) {
$line = explode(":",$data[$i]);
echo "Позывной: " . $line[0] . ", Имя " . $line[2] . ", Тип в/с " . $line[9], "<br>";
}
?>


Игорь_Vasinsky
Это к каждому юзеру добавляется или один раз в конец файла?
Цитата
!SERVERS
GBS:95.84.228.66:Russia:Russia:1


_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
greck
Эти две строки не изменяются!
Изменяются только строки с 9 строки (те которые 3 одинаковых)
Каждая строка содержит инфу о одном подключенном пользователе (например логин, где находистся код аэропорта, тип воздушного судна и тд.)
Это я хочу сделать скрипт мониторинга для сервера виртуальной авиации.
greck
![DateStamp]28/06/2013 16:26
!GENERAL
VERSION = 1
RELOAD = 1
UPDATE = 20130628162635
CONNECTED CLIENTS = 0
CONNECTED SERVERS = 1
!CLIENTS
!SERVERS
GBS:95.84.228.66:Russia:Russia:1

Вот так выглядит whazzup.txt когда никто не подключенн.
Игорь_Vasinsky
т.е. все клиенты у тебя между строк

!CLIENTS
и
!SERVERS

?
ну можно читать файл и регуляркой выдёргивать

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
greck
По сути мне нужно вывести то что после !CLIENTS и до !SERVERS
greck
Цитата (Игорь_Vasinsky @ 1.07.2013 - 10:10)
ну можно читать файл и регуляркой выдёргивать

А можно пример?
Просто я очень плохо знаю PHP
Но я учусь чесно biggrin.gif
greck
<?php
$data = file("whazzup.txt");
for($i=8;$i<count($data);$i++) {
$line = explode(":",$data[$i]);
echo "Позывной: " . $line[0] . ", Имя " . $line[2] . ", Тип в/с " . $line[9], "<br>";
}
?>

Я это то код рисовал три ночи!
Игорь_Vasinsky
если файл до 3мб то
$file = file_get_contents('test.txt');

preg_match('#\!CLIENTS(.*)\!SERVERS#usU', $file, $match);

$res = explode(PHP_EOL, $match[1]);

foreach($res as $str){

//ЕСЛИ СТРОКА НЕ ПУСТАЯ
if(strlen($str)>0){
$temp = explode(':', $str);
echo "Позывной: " . $temp[0] . ", Имя " . $temp[2] . ", Тип в/с " . $temp[9], "<br>";
}
}


если больше - то читать нужно кусками с fgets()

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Игорь_Vasinsky
ну можно канешь ваще одной регуляркой - но я б не замарачивался.

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
greck
Файл ну максимум будет одновременно на 30-40 строк а это килобайты.

А так всё работает, за что огромное спасибо!
Игорь_Vasinsky
Цитата
одновременно на 30-40 строк а это килобайты.

ну тогда и это сойдёт smile.gif

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
greck
У вас в профиле сайт полезный hdkinozavr.ru
А то я на ivi и tvzavr всё пересмотрел, у вас контент поинтересней будет.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.