0

つまり、最初にフォームからThe POST Dataから文字列を登録し、次に複数のエントリがあるかどうかを確認するスクリプトを作成したいと思います。存在する場合、そのエントリは削除され、一意のエントリの新しいリストが続行されます。

  • エントリは URL です。URL のリスト。複数のエントリがある場合があります。

    $sites=$_POST['sitelist'];
    
    $sites=explode("\n", $sites);
    

$_POST['sitelist']、送信元の Textarea から来ました。これらすべての URL を分離し、URL が再び来たかどうかを確認してから削除し、URL の新しいリストに進むにはどうすればよいですか?

4

4 に答える 4

3

これをテストします。

$sites=array_unique(explode("\n", $sites));
于 2012-10-18T17:15:12.297 に答える
2

使用array_unique():

$sites = array_unique($sites);

于 2012-10-18T17:16:21.233 に答える
2

array_unique重複の配列をフィルタリングするため、改行で分割すると、すべての正確な重複がなくなるはずです。

于 2012-10-18T17:15:17.327 に答える
0
$sites = preg_split('~\\s+~', trim($sites)); // Split by all consecutive spaces
// Uncomment next line for superficial URL validation
// $sites = preg_grep('~^https?://.+?/.*~i', $sites);
$sites = array_unique($sites); // Keep uniques

これにより、URLのリストがすべてのスペースで分割されます(URLにはスペースがなく、スペースには行区切り記号が含まれます)。空の行を保持せず、オプションのサニテーションがあります。

于 2012-10-18T17:44:07.457 に答える