Ciao a tutti, è possibile estrapolare l'eventuale sottodominio da questa stringa?
GrazieCodice PHP:echo $_SERVER[HTTP_HOST].$_SERVER[PHP_SELF];
Ciao a tutti, è possibile estrapolare l'eventuale sottodominio da questa stringa?
GrazieCodice PHP:echo $_SERVER[HTTP_HOST].$_SERVER[PHP_SELF];
puoi postare un esempio testuale? penso ti sia sufficente usare le funzioni delle stringhe... che parte ti interessa?
dato l'indirizzo
http://www.pippo.paperino.it/topolino/index.php
devo scaricare pippo e quando pippo non c'è es http://www.paperino.it allora mi serve scaricare anche la cartella topolino.
Si può fare?
con le regexp sei a posto... se faccio in tempo te ne posto una o aspettiamo un altro intervento, altrimenti puoi anche solo usare le funzioni delle stringhe:
- se nell'host ci sono più di due "." (carattere "punto") prendi tutto ciò che c'è dal secondo al penultimo (probabilmente nel tuo caso ce ne sarebbero esattamente tre)
- altrimenti preleva anche il percorso fino alla prima cartella
Così potrebbe funzionare?
Edit, piccolo erroreCodice PHP:$indirizzo = $_SERVER[HTTP_HOST].$_SERVER[PHP_SELF];
$sottodominio = explode(".",$indirizzo);
$sottodominio = $sottodominio[1];
if(strlen($sottodominio)==0)
{
$cartella = explode("/",$indirizzo);
$cartella = $cartella[3];
}
no perchè $sottodominio[1] non sarà mai di lunghezza = 0
BUT. Honestly - Clarity without the comfortHonest writing by Nicola Mustone on the messy overlap between humans and tech.
se esplodi per '.', ci sarà un certo numero di elementi nell'array in base al numero di . trovati.
Potrebbe essere un metodo contare quanti sono questi elementi.
BUT. Honestly - Clarity without the comfortHonest writing by Nicola Mustone on the messy overlap between humans and tech.
senza regexp? tipo... (da verificare)
Codice PHP:$dominio = $_SERVER[HTTP_HOST];
$parti = explode('.', $dominio);
if (sizeof($parti)<=2) { // es.: [url]www.example.com[/url]
$indirizzo = '';
} else { // es.: [url]www.prova.example.com[/url]
$indirizzo = $parti[2]; // oppure fai un implode escludendo gli ultimi due.. non ho capito esattamente cosa ti serve prendere
};
poi devi aggiungere l'altro pezzo
Altrimenti questo potrebbe funzionare?
Codice PHP:$indirizzo = $_SERVER[HTTP_HOST].$_SERVER[PHP_SELF];
/**/
$sottodominio = explode(".",$indirizzo);
$conto = count($sottodominio);
if($conto>=2)
{
$sottodominio = $sottodominio[1];
}
else
{
$cartella = explode("/",$indirizzo);
$cartella = $cartella[3];
}