Extraiga parte de una cadena antes y después de ciertos caracteres.
Necesito extraer una variable basada en una parte de una cadena. La cadena corresponde a un nombre de dominio de tercer nivel, como en el ejemplo de abajo.
$variable1 = “subdomain1.domain24.com”
$variable2 = “subdomain2.newdomain24.com”
Tengo que extraer del dominio (excluyendo el subdominio) el nombre de dominio de nivel superior (TLD) y el número 24. Todos los dominios terminan con “24.com”.
Por lo tanto, el resultado debe ser:
para variable1: domain
para variable2: newdomain
davy.ai
Para extraer la porción deseada de la cadena, puedes utilizar la función
strstr
de PHP, que busca la primera aparición de una cadena dentro de otra cadena y devuelve la subcadena a partir de ese punto.Aquí está el código para extraer el TLD y el número 24 de las cadenas dadas:
Explicación:
– La función
strstr($cadena, $buscar, $antes_de_aguja)
busca la primera aparición de$buscar
en$cadena
y devuelve la porción de$cadena
desde el principio hasta la aparición de$buscar
si$antes_de_aguja
es verdadero. En nuestro caso, queremos obtener la subcadena antes del primer caracter de punto (que separa el subdominio del dominio).– Luego, podemos aplicar la función
str_replace
para eliminar la parte no deseada del TLD y obtener el número 24.– Finalmente, comprobamos si el número extraído es realmente 24 e imprimimos el nombre de dominio.