2017-04-09 8 views
0

おはようございますインターネットからテレビ番組や映画ストリーミングチャンネルに多くのリンクを含むテキストファイルをダウンロードしますが、ランダムな順序で表示されます私はおそらく配列や何かを設定することができます順序に従って各行を並べ替えるためのPHP? これは、チャンネルtvの名前を使用して、すべての行で変更される唯一のソースである、化合物と異なる順序を与えるファイルの例です。彼らは初心者であり、私はネットワークでやりたいことを探す日ですが、私の事例を作り出す例は見つけられません。ありがとうございました。txtファイルの自然な順序の行を入れてください

<a href='http://example.com:80/tv/example/playlist.m3u8'>AdamTV</a> 
<a href='http://example.com:80/tv/example/playlist.m3u8'>Skynews</a> 
<a href='http://example.com:80/tv/example/playlist.m3u8'>NaturalTV</a> 
<a href='http://example.com:80/tv/example/playlist.m3u8'>SportTV</a> 
<a href='http://example.com:80/tv/example/playlist.m3u8'>Channel4</a> 

これは私がやろうとしているものです、行毎にファイルを読み始めるが、私は推奨されていませんエラー:)機能分割が(

<?php 
$linee = file("file.txt"); 
while(list(,$value) = each($linee)) { 
list($url, $channel) = split("[>]", $value); 
$params["url"] = trim($url); 
$params["channel"] = trim($channel); 
echo $params["url"]." ".$params["channel"]; 
} 

答えて

0

を推奨されていません読むには、配列にファイルをして、ソートusortの配列 - これはリンクからテレビ番組名を抽出して(例えば、preg_match)、それらを比較することを可能にします。

例:正直なところ

$linee = [ 
    "<a href='http://example.com:80/tv/example/playlist.m3u8'>AdamTV</a>", 
    "<a href='http://example.com:80/tv/example/playlist.m3u8'>Skynews</a>", 
    "<a href='http://example.com:80/tv/example/playlist.m3u8'>NaturalTV</a>", 
    "<a href='http://example.com:80/tv/example/playlist.m3u8'>SportTV</a>", 
    "<a href='http://example.com:80/tv/example/playlist.m3u8'>Channel4</a>", 
]; 

usort(
    $linee, 
    function($a, $b) { 
     preg_match("/>(.*)</", $a, $a_val); 
     preg_match("/>(.*)</", $b, $b_val); 

     if ($a_val[0] == $b_val[0]) { 
      return 0; 
     } 
     return ($a_val[0] < $b_val[0]) ? -1 : 1; 
    } 
); 

print_r($linee); 
+0

、私は、それだけには本当に経験の浅いよ、あなたは私が行うことができる方法の例を取ることができ、私は試してみて、私は私のニーズに合うようにスクリプトを試してみてくださいgrazie.Sono日いいえ役に立たない – Antony

+1

あなたの試行のコードであなたの投稿を編集してください。それ以外の場合は、ここで何か助けを得ることはできません。 – ghostprgmr

+0

元の投稿を修正しました。これまでの作業をお勧めします。ありがとうございました – Antony

関連する問題