PHP ile ikili dosyasından düz metin oku

3 Cevap php

Dosya 1:

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

Dosya 2:

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

Nasıl ben gibi metin ile bir dizi doldurmak için böyle PHP ile bu ikili dosyaları okurum:

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

3 Cevap

Bu herhangi bir kelime karakter (0-9, az, AZ ve _) eşleşir:

preg_match_all(
    "/[\x30-\x39\x5F\x41-\x5A\x61-\x7a]+/", /* regexp */
    file_get_contents('file1'),             /* file contents */
    $file1_output                           /* array to populate */
);

Değil bu biraz daha iyi bir şekilde yapabilirdi, ama belki dosyadan karakter-by-karakter okuma ve (ord () fonksiyonu kullanılarak) ASCII kodu ise kontrol aralığı ise ilgilendiğiniz emin - Ayrıca hile yapmak istiyorsunuz?

@ Frank Farmer söylediklerini üzerine inşa etmek, ben kullanmak istiyorum 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);

?>