2つの配列があります。彼らは少なくとも1つの同じ値のセットを含んでいるようですが、array_diff()
を実行すると、私はそれがすべきだと思っても何も返しません!これはちょうど日常的なコードだったはずですが、何らかの理由でそれは私がやったことが好きではありません。配列の値は同じではありません(でも?)
奇妙なことは、var_dump($queue[0]);
がString(167);
を返し、var_dump($videos[0])
がString(168)
を返すということです。
明らかに、それらは異なっていなければなりませんか?
echo similar_text($queue[0]), $videos[0]);
は、167
を返します。何!?
注:これらは単なるファイル名であり、ファイルの内容を表すものではありません。
ビデオアレイ
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)
キュー配列
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)
出力
の$diff = array_intersect($queue,$videos); print_r($diff);
戻りArray ()
var_dump($queue[0]);
戻り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]);
戻りstring(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]);
戻り167
。
私は文字列をJavaScriptの文字数に入れました。私はstrlen()、trim()を使って空白を整えました。手動で各文字を手動で数えました。どうしたの?
あなたはPHP型変換の狂気に気づいていますか?そうでない場合は注意してください。彼らはときどき識別するのが難しいです。 – thatidiotguy
そのうちの1つに印刷できない文字が含まれている可能性があります。それらを両方ともヘキサエディタに入れ、完全な内容を調べます。 –
行末をチェックしましたか? \ n対\ r \ n? –