Чтение простого текста из двоичного файла с помощью PHP - PullRequest
0 голосов
/ 04 марта 2010

Файл 1:

asdffdsa

Файл 2:

asdfjklfdsaHGUik

Как мне прочитать эти двоичные файлы с помощью PHP, чтобы я мог заполнить массив открытым текстом, например:

$file1_output = ["asdf", "fdsa"];
$file2_output = ["asdfjkl", "fdsaHGUik"];

Ответы [ 3 ]

1 голос
/ 04 марта 2010

Это будет соответствовать любому символу слова (0-9, a-z, A-Z и _):

preg_match_all(
    "/[\x30-\x39\x5F\x41-\x5A\x61-\x7a]+/", /* regexp */
    file_get_contents('file1'),             /* file contents */
    $file1_output                           /* array to populate */
);
0 голосов
/ 05 марта 2010

Чтобы понять, что сказал @Frank Farmer, я бы использовал strings:

<?php

$strings_command = '/usr/bin/strings';

$file1_output = array();
$file2_output = array();

exec("$strings_command $path_to_file1",$file1_output);
exec("$strings_command $path_to_file2",$file2_output);

?>
0 голосов
/ 04 марта 2010

Не уверен, что вы могли бы сделать это как-то лучше, но, возможно, считывание char-by-char из файла и проверка, находится ли его ASCII-код (с использованием функции ord ()) в диапазоне, который вас интересует, - также сделал бы трюк?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...