2012-01-28 8 views
3

私は、そう整えするミドルセクション "のブログ/トピック/ポスト名/" の必要性を、いくつかの$ _SERVER [ 'QUERY_STRING']クエリ文字列の中間セクションをトリミングする方法は?

$_SERVER['QUERY_STRING'] : "http://domain.com/blog/topics/post-name/uploads/flashfile.swf" 

I want this output:  "http://domain.com/uploads/flashfile.swf" 

を変更したいです。実際の単語は、query_stringがどのページで処理されるかによって変わる可能性があります。特に、post-nameは予測不可能です。 この中間セクションをトリミングするにはどうすればよいですか?

編集:flashfile.swfは単なる例であり、異なる拡張子の異なる名前にすることができます。

+0

?あなたはそれをトリミングしたいですか?フレックスやPHPで? – michael

+0

混乱して申し訳ありませんが、querry文字列はflexオブジェクトによって使用されます。コードはPHPにあります。 – Jenny

答えて

1

最も簡単な方法があり、ここで

$url = "http://domain.com/blog/topics/post-name/uploads/flashfile.swf"; 
$str = str_replace($url, 'blog/topics/post-name/', ''); 

は、動的なものです。

$p = parse_url($url); 
$v = basename($url); 
$d = basename(dirname($url)); 
$str = $p['scheme']."://". $p['host']."/$d/$v"; 
echo $str; 
+0

ありがとう、ダイナミックなものは完璧に動作します – Jenny

0
$parsed = parse_url($_SERVER['QUERY_STRING']); 
$trimed = $parsed[ 'scheme' ] . '://' . $parsed[ 'host' ] . '/uploads/flashfile.swf'; 
0

あなたは次のように行うことができます。これは曲がるようにreleatedれる方法

$url = "http://domain.com/blog/topics/post-name/uploads/flashfile.swf"; 
$new_url = str_replace($url, 'blog/topics/post-name/', ''); 
関連する問題