2017-06-13 2 views
1

Hi kann ich die Base10-Nummern aus einer MP3-Datei in PHP bekommen. Ich möchte Nummern speichern in einem Array:Wie base10 Zahlen in ein Array konvertieren

<?php 
    $filename = "sample.mp3"; 
    $handle = fopen($filename, "rb"); 
    $fsize = filesize($filename); 
    $contents = fread($handle, $fsize); 
    fclose($handle); 
    for($i = 0; $i < $fsize; $i++) { 
    $asciiCharacter = $contents[$i]; 
    $base10value = ord($asciiCharacter); 
    var_dump($base10value) 
    } 
?> 
+0

Was ist die Ausgabe von var_dump ($ base10value)? –

+0

das ist nur einige Int –

Antwort

1

Das ist ganz einfach, definieren ein Array und dann

<?php 
$filename = "sample.mp3"; 
$handle = fopen($filename, "rb"); 
$fsize = filesize($filename); 
$contents = fread($handle, $fsize); 
fclose($handle); 

$base10array = array(); 

for($i = 0; $i < $fsize; $i++) { 
    $asciiCharacter = $contents[$i]; 
    $base10value = ord($asciiCharacter); 

    $base10array[] = $base10value; 

    var_dump($base10value) 
} 
?> 
+0

bro, die funktioniert, aber es wird ein Fehler wie folgt –

+0

Erlaubte Speichergröße von 268435456 Bytes erschöpft –

+0

Wie viele Objekte versuchen Sie, dieses Array hinzuzufügen? Sieht nach viel aus! – RiggsFolly

1

Eine Zeilenversion in der Schleife laden:

$array = array_map('ord',str_split(file_get_contents("sample.mp3"))); 
var_dump($array); 

Hinweis: Dies ist nicht für Produktionsumgebungen. Es benötigt Speicher ungefähr gleich der dreifachen Dateigröße. @ RiggsFolly's Lösung ist viel mehr optimiert.

Verwandte Themen