2017-10-15 8 views
-4

URL文字列を受け取り、URL文字列にサブドメイン文字列を追加する関数を作成しようとしています。申し訳ありませんが、これはあなたにとっては簡単すぎる場合は、メインサイトからログインしたユーザのサブドメインにリダイレクトしたいので、サブドメインを「注入する」方法を探しています。PHPはURL文字列にサブドメインを追加します

function inject_subdomain($url,$subdomain) 

} 

$url = 'hxxps://abc.com/'; 
inject_subdomain($url,'ninja'); 
//returns 'hxxps://ninja.abc.com/' 

$url = 'hxxps://www.abc.com/'; 
inject_subdomain($url,'ninja'); 
//returns 'hxxps://ninja.abc.com/' 

$url = 'hxxp://www.abc.co.uk/'; 
inject_subdomain($url,'ninja'); 
//returns 'hxxp://ninja.abc.co.uk/' 
+0

問題点は何ですか? –

+0

何か試してみる必要があります。 SOは無料のコードサービスではありません。 –

+0

@MagnusErikssonごめんなさい、サービスに新しい。私は次回に自分の試行を掲示します。私が意図したものではありません。私はちょうど解決策がとてもシンプルであることを知っていました。ちょうど正しい方向を指摘する必要がありました。 –

答えて

-1

はこのお試しください:アブダスSattarの答えに

function inject_subdomain($url,$subdomain) 
    $url_parts = explode('://www',$url); 
    $url_parts2 = explode('://',$url); 
    if(count($url_parts)){ 
    return $url_parts[0].$subdomain.$url_parts[1]; 
    } 
    return $url_parts2[0].$subdomain.$url_parts2[1]; 

} 
+0

あなたは関数の中括弧を紛失しています。また、 'if'ステートメントは_always_をtrueに返します(explodeは常に少なくとも1つの配列項目を返します)。 –

+0

@Abdus \t ありがとうございました。私はあなたのコードから得たアイデアのおかげでそれを解決しました。私はあなたの解決策を編集しました。 –

1

おかげで...それは以下の...正しい方向に私を指摘し、私が探していたソリューションです...

function inject_subdomain($url,$subdomain){ 

    strstr($url,'www') ? 
     $url_parts = explode('://www',$url): 
     $url_parts = explode('://',$url); 

    return $url_parts[0].'://'.$subdomain.'.'.$url_parts[1]; 

} 
関連する問題