PHP - Dividir texto a partir de un símbolo

 
Vista:
sin imagen de perfil
Val: 23
Ha aumentado su posición en 4 puestos en PHP (en relación al último mes)
Gráfica de PHP

Dividir texto a partir de un símbolo

Publicado por Fabricio (11 intervenciones) el 29/03/2020 06:49:04
Buenas noches chicos, estoy intentando separar una cadena de texto que seria 'Whirlpool Productions - From Disco To Disco.mp3' , la idea seria crear $artista y $tema como todavía no tengo mucha experiencia me gustaría saber si mi código es bueno, funciona pero talvez hay maneras mas sencillas de lograr lo mismo y no la se, desde ya muchas gracias!

1
2
3
4
5
6
7
8
9
10
11
<?php
$title = 'Whirlpool Productions - From Disco To Disco.mp3';
$separador = '-';
$artista = substr($title,0, strpos($title, $separador)-1);
$tema = substr($title,strpos($title, $separador)+2,-4);
 
echo "<br />\n";
echo "$artista";
echo "<br />\n";
echo "$tema";
?>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Julio
Val: 2.007
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Dividir texto a partir de un símbolo

Publicado por Julio (830 intervenciones) el 29/03/2020 11:30:24
Hola.

Para hacer lo que comentas se utiliza la función explode. Te dividirá esa cadena en un array con tantos elementos como trozos (dependiendo del separador) haya. Te será mucho más cómodo que andar con substring calculando posiciones.

-----------------------------
Aprende la programación desde una perspectiva básica y simplista en Programación Básica
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 23
Ha aumentado su posición en 4 puestos en PHP (en relación al último mes)
Gráfica de PHP

Dividir texto a partir de un símbolo

Publicado por Fabricio (11 intervenciones) el 29/03/2020 12:36:27
Gracias por el dato Julio! estudiare esa función a ver que tal queda
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 23
Ha aumentado su posición en 4 puestos en PHP (en relación al último mes)
Gráfica de PHP

Dividir texto a partir de un símbolo

Publicado por Fabricio (11 intervenciones) el 29/03/2020 13:28:15
Gracias por la función, me quedo mucho mas claro

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
 $buscar  = array(
    '.mp3' => '',
    '–' => '-',
    'Feat.' => 'feat.',
    'ft.' => 'feat.',
    'Ft.' => 'feat.'
 );
 $title = strtr("Whirlpool Productions - From Disco To Disco.mp3", $buscar);
 $parte = explode(" - ", $title);
 
 echo "<br />\n";
 echo $parte[0];
 echo "<br />\n";
 echo $parte[1];
?>

Aprovecho para sacarme otra duda...
Cuando tomo la información desde el formulario algunos nombres que contienen ciertos caracteres me traen problemas por ejemplo los que contienen "% : ." entre otros, lo que hice es reemplazarlos por caracteres que no uso ( '%' => 'ò' ) y volverlo a remplazar al momento de mostrar ('ò' => '%') funciona bien con la mayoría pero no logro hacer lo mismo con el '

El código es así

1
2
3
4
5
6
7
8
9
$buscar       = array(
    ' ' => '_',
    '%' => 'ò',
    '>' => 'è',
    ':' => 'à',
    '.' => 'ì'
);
 
$disco        = (isset($_POST['disco'])) ? strtr($_POST['disco'], $buscar) : "";

Por ejemplo el titulo "Don't Be Afraid Of The Dark" me traería problemas, así que debo cambiar manualmente en el form ' por ´ y me lo mostraría como "Don´t Be Afraid Of The Dark" hay forma de incluirlo en $buscar?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Julio
Val: 2.007
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Dividir texto a partir de un símbolo

Publicado por Julio (830 intervenciones) el 29/03/2020 13:49:24
Hola.

Para no hacer esos cambios, lee sobre este tipo de funciones en el manual: aquí. Lee sobre htmlspecialchars, sobre htmlentities, htmlspecialchars_decode y todo eso tipo de funciones. Igual te sirve.

-----------------------------
Aprende la programación desde una perspectiva básica y simplista en Programación Básica
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar