Ich habe zwei Arrays. Sie scheinen mindestens eine identische Menge von Werten zu enthalten, aber die Ausführung array_diff()
gibt nichts zurück, obwohl ich denke, dass es sollte! Dies sollte nur Routine-Code gewesen sein, aber aus irgendeinem Grund mag es nicht, was ich getan habe.Array-Werte nicht identisch (aber sie sind?)
Die seltsame Sache ist, dass var_dump($queue[0]);
String(167);
zurückgibt und var_dump($videos[0])
String(168)
zurückgibt.
Also klar, müssen sie anders sein, oder?
echo similar_text($queue[0]), $videos[0]);
gibt 167
zurück. Was!?
Hinweis: Dies sind nur Dateinamen und repräsentieren nicht den Inhalt der Datei.
Videos Array
Array ([0] => /var/www/downloads/j2/Dexter Season 1, 2, 3, 4, 5 & 6 + Extras (Early Cuts, Audiobooks etc) DVDRip HDTV TSV/Season 3/Dexter Season 3 Episode 04 - All in the Family.avi)
Queue Array
Array ([0] => /var/www/downloads/j2/Dexter Season 1, 2, 3, 4, 5 & 6 + Extras (Early Cuts, Audiobooks etc) DVDRip HDTV TSV/Season 3/Dexter Season 3 Episode 04 - All in the Family.avi [1] => j2)
Ausgänge
$diff = array_intersect($queue,$videos); print_r($diff);
kehrtArray ()
var_dump($queue[0]);
kehrt string(167) "/var/www/downloads/j2/Dexter Season 1, 2, 3, 4, 5 & 6 + Extras (Early Cuts, Audiobooks etc) DVDRip HDTV TSV/Season 3/Dexter Season 3 Episode 04 - All in the Family.avi"
var_dump($videos[0]);
kehrtstring(168) "/var/www/downloads/j2/Dexter Season 1, 2, 3, 4, 5 & 6 + Extras (Early Cuts, Audiobooks etc) DVDRip HDTV TSV/Season 3/Dexter Season 3 Episode 04 - All in the Family.avi"
echo similar_text($queue[0], $videos[0]);
kehrt167
.
Ich habe die Zeichenfolgen in JavaScript-Zeichen zählt, ich habe Strlen(), trim() verwendet, um Whitespace zu trimmen, ich habe sogar jedes Zeichen einzeln manuell gezählt. Was ist los?
Sind Sie sich der Irrsinnigkeit von PHP-Typkonvertierungen bewusst? Wenn nicht, pass auf. Sie sind manchmal teuflisch schwer zu erkennen. – thatidiotguy
Einer von ihnen enthält möglicherweise ein nicht druckbares Zeichen. Setze sie beide in einen Hex-Editor, um ihren gesamten Inhalt zu untersuchen. –
Haben Sie Zeilenenden überprüft? \ n vs \ r \ n? –