私は 2 つの配列を持っています。1 つは URL パスの大規模なセットを含み、もう 1 つは検索 ID を含みます。各 URL パスには、共通の一意の ID が 1 つあります。検索 ID によって、一意の ID を持つ最長の URL を見つける必要があります。これが私のコードです。後でもう少し説明します。
<?php
function searchstring($search, $array) {
foreach($array as $key => $value) {
if (stristr($value, $search)) {
echo $value;
}
}
return false;
}
$array = array(
"D:\winwamp\www\info\961507\Good_Luck_Charlie",
"D:\winwamp\www\info\961507\Good_Luck_Charlie\season_1",
"D:\winwamp\www\info\961507\Good_Luck_Charlie\season_1\episode_3",
"D:\winwamp\www\info\961507\Good_Luck_Charlie\season_1\episode_3\The_Curious_Case_of_Mr._Dabney",
"D:\winwamp\www\info\961506\Good_Luck_Charl",
"D:\winwamp\www\info\961506\Good_Luck_Charlie\season_1",
"D:\winwamp\www\info\961506\Good_Luck_Charlie\season_1\episode_1",
"D:\winwamp\www\info\961506\Good_Luck_Charlie\season_1\episode_1\Study_Date");
$searchValues = array("961507","961506");
foreach($searchValues as $searchValue) {
$result = searchstring($searchValue, $array);
}
?>
これにより、一致したすべての ID の値が得られます。私の配列を見ると、4 セットの URL パスがあります。私が欲しいのは、「961507」で検索すると、次のようになるはずです。
"D:\winwamp\www\info\961507\Good_Luck_Charlie\season_1\episode_3\The_Curious_Case_of_Mr._Dabney"
「961506」で検索すると、次のようになります。
"D:\winwamp\www\info\961506\Good_Luck_Charlie\season_1\episode_1\Study_Date"
今、私が取得しているのは、検索した ID と一致したすべての配列です。どうすればこれを達成できるか教えてください。98000 以上の URL を整理する必要があるためです。