1

私のサイトには、音楽プレーヤー用のmp3URLを生成する次の文字列があります。

<?php echo $song->getTitle() ?>

その結果、/ public / music_song / df / 74 / 746b_2112.mp3?c = ec1e

文字列からクエリを削除して、/ public / music_song / df / 74/746b_2112.mp3になります。

URLを分割する方法を調べましたが、まだphpの天才にはほど遠いので、preg_replaceを分割または使用する天気や、既存の文字列に組み込む方法がわかりません。

私はこれらのクエリを取り除く必要があります、それらは不必要であり、毎日私のデータベースをクラッシュさせます。

4

2 に答える 2

4
list($keep) = explode('?', '/public/music_song/df/74/746b_2112.mp3?c=ec1e');
于 2012-05-01T19:41:32.450 に答える
1
$parsedInput = parse_url('/public/music_song/df/74/746b_2112.mp3?c=ec1e');
echo $parsedInput['path'];
// Results in /public/music_song/df/74/746b_2112.mp3

編集:私はSocialEngineを使ったことがないので、あなたがする必要があるのは次のとおりだと思います。

<?php $parsed = parse_url($song->getFilePath());
      echo $this->htmlLink($parsed['path'], 
                           $this->string()->truncate($song->getTitle(), 50), 
                           array('class' => 'music_player_tracks_url', 
                                 'type' => 'audio', 
                                 'rel' => $song->song_id )); ?>
于 2012-05-01T20:51:13.460 に答える