Svetlanka_87
Новичок
Чтение текстового файла странного формата
Добрый день, Господа!
У меня возникла проблема следующего рода:
В ОС Windows существует средство администрирования WMI. При его помощи забираются логи журналов и передаются админу в текстовом формате (Logs.txt).
После этого на серваке под управлением Апач и пхп этот файл парсится и вставляется в базу данных. Проблема заключается в следующем:
Вот файл который получается от WMI:
его название условно Logs.txt
Двлее я пишу скрипт вида:
После этого запускаю в браузере страницу (она и сейчас находится там): http://soul.18ero.com/pars.php
И вот что выводится: в браузере Chrom, IE все нормально, даже обращение к строкам из середины файла удачно отображается, а вот в Opera выводится весь файл с квадратами вместо пробелов а если осуществлять доступ к какой-то конкретной строке - то вобще пусто - ничего не выводит. В чем может таиться проблема? Кодировка страницы Windows-1251.
Вот скрин:
Из скрина видно что в самом начале два символа "яю" ни как не могу понять что это такое - ведь в файле этого нет.. начало файла - слово Category..
При применении функции strpos($f_arr,0,8) по идее должно вывестись (см первый скрин): Category=
Однако выводится только: Cate
То есть каждый символ идет как за 2.. почему так?
и еще что я заметила: если взять, например, этот же файл Logs.txt открыть его руками, скопировать в буфер, создать файл (например Logs2.txt) и вставить в него из буфера, и сохранить, то все работает замечательно.
и выводится и в опере хорошо и обращаться можно к любой строке и доступ к символу идет как к 1 а не со смещением = 2 (то есть выведет Category)
Надеюсь на вашу помощь.
ЗЫ Если кто сталкивался с WMI то может быть как-то формат вывода нужно редактировать
Заранее спасибо.
Добрый день, Господа!
У меня возникла проблема следующего рода:
В ОС Windows существует средство администрирования WMI. При его помощи забираются логи журналов и передаются админу в текстовом формате (Logs.txt).
После этого на серваке под управлением Апач и пхп этот файл парсится и вставляется в базу данных. Проблема заключается в следующем:
Вот файл который получается от WMI:
его название условно Logs.txt
Двлее я пишу скрипт вида:
PHP:
<?php
$f_arr = file("logs_pc/Logs.txt");
for($i=0;$i<count($f_arr);$i++){
echo $f_arr[$i];
}
?>
И вот что выводится: в браузере Chrom, IE все нормально, даже обращение к строкам из середины файла удачно отображается, а вот в Opera выводится весь файл с квадратами вместо пробелов а если осуществлять доступ к какой-то конкретной строке - то вобще пусто - ничего не выводит. В чем может таиться проблема? Кодировка страницы Windows-1251.
Вот скрин:
Из скрина видно что в самом начале два символа "яю" ни как не могу понять что это такое - ведь в файле этого нет.. начало файла - слово Category..
При применении функции strpos($f_arr,0,8) по идее должно вывестись (см первый скрин): Category=
Однако выводится только: Cate
То есть каждый символ идет как за 2.. почему так?

и еще что я заметила: если взять, например, этот же файл Logs.txt открыть его руками, скопировать в буфер, создать файл (например Logs2.txt) и вставить в него из буфера, и сохранить, то все работает замечательно.
и выводится и в опере хорошо и обращаться можно к любой строке и доступ к символу идет как к 1 а не со смещением = 2 (то есть выведет Category)
Надеюсь на вашу помощь.
ЗЫ Если кто сталкивался с WMI то может быть как-то формат вывода нужно редактировать
Заранее спасибо.