У меня есть один файл. но теперь должен считать этот файл в массив байтов. В Java или C++ очень легко сделать это. но не найденный, как я могу читать в PHP.
См. Руководство PHP по доступу к строке и изменению с помощью символа
К символам в строке s можно получить доступ и изменить, указав с нуля смещение желаемого символа после строки в квадратных скобках массива, как в
$ str [42]
. Для этого подумайте о строке как о массиве символов. Функцииsubstr ()
иsubstr_replace ()
могут использоваться, когда вы хотите извлечь или заменить более 1 символа.
Или, если вы после поиска и чтения байтов из файла, вы можете использовать SplFileObject
$file = new SplFileObject('file.txt');
while (false !== ($char = $file->fgetc())) {
echo "$char\n";
}
Это не массив байтов, а итерация по дескриптору файла. SplFileInfo реализует интерфейс SeekableIterator .
И на полях, есть также
слишком много php>
$ data = file_get_contents ("/ tmp / some_file.txt");
лучший способ сделать для (не рекомендуется использовать count, sizeof, strlen или другие функции): { {1}} $ counter = strlen ($ data);
for ($ i = 0; $ i <$ counter; ++ $ i) {
$ char = data [ $ i];
echo "Byte $ i: $ char \ n";
}
Вы можете прочитать файл с помощью fread ()
или file_get_contents ()
, а затем разделить его с помощью str_split ()
:
$MyArray = str_split($file);
. Вы можете прочитать файл в строке следующим образом:
$data = file_get_contents("/tmp/some_file.txt");
Вы можете получить отдельные байты аналогично тому, как вы будет на C:
for($i = 0; $i < strlen($data); ++$i) {
$char = $data[$i];
echo "Byte $i: $char\n";
}
Ссылки: