2017-10-15 1 views
-4

J'ai essayé de créer une fonction qui prend la chaîne d'URL et ajoute une chaîne de sous-domaine à la chaîne d'URL. Je suis désolé si c'est trop facile pour vous, je veux rediriger vers le sous-domaine de l'utilisateur une fois qu'ils se connectent depuis le site principal, c'est pourquoi je cherche un moyen d '«injecter» le sous-domaine.PHP ajouter un sous-domaine à une chaîne d'URL

par exemple.

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

Quel est le problème? –

+0

Vous avez besoin d'essayer quelque chose. SO n'est pas un service de code gratuit. –

+0

@MagnusEriksson désolé à ce sujet, nouveau au service. Je posterai mes tentatives la prochaine fois. Pas ce que j'avais prévu. Je savais que la solution était si simple que j'avais juste besoin d'être pointé dans la bonne direction. –

Répondre

-1

Essayez ceci:

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

Il vous manque l'accolade d'ouverture des fonctions et l'instruction 'if' retournera _always_ true (puisque explode renverra toujours au moins un élément de tableau). –

+0

@Abdus \t Merci. Je l'ai résolu grâce à une idée que j'ai eu de votre code. J'ai modifié votre solution. –

1

Merci à la réponse Abdus Sattar ... Il m'a fait la bonne direction ... ci-dessous est la solution que je cherchais ...

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]; 

}