2017-03-08 8 views
-2

を使用して、私は、その後のiframeに追加され$ VIDEO_IDに保管し、ユーチューブV値を取得するために埋め込みAudiomackプレーヤーPHP

if (preg_match('![?&]{1}v=([^&]+)!', 'youtubeurl' . '&', $m)) $video_id = $m[1]; 

プリプレグの一致を使用します。

<iframe width="100%" height="305" src="http://www.youtube.com/embed/<? echo $video_id; ?>?rel=2&autoplay=0" frameborder="0" allowfullscreen></iframe> 

私のウェブサイトにyoutubeビデオを読み込むには。 Audiomackに同じアプローチを使用しようとしていますが、URLフォーマットは異なります。

Audiomackは、次のURL形式を使用します。

https://www.audiomack.com/song/famous-dex/annoyed 

iframeは次のとおりです。

<iframe src="https://www.audiomack.com/embed4/famous-dex/annoyed" scrolling="no" width="100%" height="110" scrollbars="no" frameborder="0"></iframe> 

どのように私は、一緒にスラッシュでURLから最後の2つの文字列を取得する変数に格納し、その後のiframeからそれを呼び出すために上記するpreg_matchを変更することができますか?

例えば、

$url = 'https://www.audiomack.com/song/famous-dex/annoyed';  
if (preg_match('![?&]{1}v=([^&]+)!', '$url' . '&', $m)) $audio_id = $m[1]; 

$ audio_idの値はその後、私のようなIFRAMEに挿入できる有名-DEX /イライラ を返す必要があります。

<iframe src="https://www.audiomack.com/embed4/<? echo $audio_id; ?>" scrolling="no" width="100%" height="110" scrollbars="no" frameborder="0"></iframe> 

答えて

2

使用このコード:他

$url = 'https://www.audiomack.com/embed4/famous-dex/annoyed'; 
if (preg_match('/.+\/(.+\/.+)$/', $url, $matches)) { 
    $audio_id = $matches[1]; 
    echo $audio_id; // gives you famous-dex/annoyed 
} 
  1. マッチ何でもあなたは "/"
  2. キャプチャに "/"
  3. で分離されているなどの任意の2つの文字、単語を、到達まで
  4. マッチ検索を終了します。

"$"を指定しないと検索が失敗します。これは、このコンテキストでは検索を「最後から後ろに」開始するような種類のものです。

+1

答えに小さな説明を追加して、その理由を説明してください。 – Morgoth

+0

私はちょうどそれを追加しました。ありがとう@Morgoth。 – Nelis

+0

うわー...魅力のように働く! Thanx @Nelis –

関連する問題