Foros del Web » Programando para Internet » PHP »

como trasformar espacio en guiones?

Estas en el tema de como trasformar espacio en guiones? en el foro de PHP en Foros del Web. Buenas tardes Lo que quiero es saber si existe una función que funcione como el explode, pero que lo único que haga es cambiar espacios ...
  #1 (permalink)  
Antiguo 14/11/2010, 13:19
 
Fecha de Ingreso: febrero-2010
Mensajes: 84
Antigüedad: 14 años, 2 meses
Puntos: 1
Pregunta como trasformar espacio en guiones?

Buenas tardes
Lo que quiero es saber si existe una función que funcione como el explode, pero que lo único que haga es cambiar espacios en blanco por "-".

Muchas gracias por su tiempo
  #2 (permalink)  
Antiguo 14/11/2010, 13:26
Avatar de david_M_G  
Fecha de Ingreso: febrero-2005
Mensajes: 938
Antigüedad: 19 años, 2 meses
Puntos: 20
Respuesta: como trasformar espacio en guiones?

Código PHP:
<?php
$texto 
"Hola que tal";
$texto_cambiado str_replace(" ""_"$texto);

echo 
$texto_cambiado//Mostrara: Hola_que_tal
?>
Suerte
  #3 (permalink)  
Antiguo 14/11/2010, 14:50
 
Fecha de Ingreso: febrero-2010
Mensajes: 84
Antigüedad: 14 años, 2 meses
Puntos: 1
Respuesta: como trasformar espacio en guiones?

Muchas gracias david_M_G, me parecía que existía algo mas sencillo
gracias
  #4 (permalink)  
Antiguo 14/11/2010, 15:11
 
Fecha de Ingreso: noviembre-2010
Ubicación: /home/RD/Villa_Altagracia
Mensajes: 18
Antigüedad: 13 años, 5 meses
Puntos: 4
Respuesta: como trasformar espacio en guiones?

hola ariann hize una funcion para hacer algo parecido solo que esta quita los guiones por espacio, puedes modificarla para que te cambie los espacios a guiones y viseversa

Código PHP:
Ver original
  1. function mostrarTitulo($name){
  2.  
  3.     //Eliminamos los Guinos del Titulo y Agregamos un Espacio en Blanco
  4.  
  5.     $guiones2=preg_replace("/-/", " ", $name); 
  6.  
  7.     //Cambiar el Titulo a Miniscula para el Link
  8.  
  9.     $mayusculas=ucwords($guiones2);
  10.  
  11.     //Eliminar los Caracteres Especiales del Titulo.
  12.  
  13.     $titulo=ereg_replace("[^A-Za-z0-9-]", " ", $mayusculas);
  14.  
  15.     echo $titulo;
  16.  
  17. }

y para realizar su uso seria asi

Código PHP:
Ver original
  1. mostrarTitulo($cadena_para_modificar)
  #5 (permalink)  
Antiguo 14/11/2010, 15:19
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 14 años, 11 meses
Puntos: 322
Respuesta: como trasformar espacio en guiones?

@Acidlake

No se necesitan hacer funciones, PHP ya trae una por defecto que es str_replace ;)
__________________
Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación
¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies
  #6 (permalink)  
Antiguo 14/11/2010, 15:28
 
Fecha de Ingreso: noviembre-2010
Ubicación: /home/RD/Villa_Altagracia
Mensajes: 18
Antigüedad: 13 años, 5 meses
Puntos: 4
Respuesta: como trasformar espacio en guiones?

Cita:
Iniciado por Sourcegeek Ver Mensaje
@Acidlake

No se necesitan hacer funciones, PHP ya trae una por defecto que es str_replace ;)
si brother, esto lo hize para algo como esto, tenia un titulo de esta forma

ejemplo titulo de un post@#!

entonces queria generar un link SEO en vez de usar algo como: ver.php?id=4454646
con esta funcion quedaria algo asi:
ejemplo-titulo-de-un-post

y usando el mod_rewrite de apache se escribiran las reglas para que te quede
ejemplo-titulo-de-un-post.html

para esto fue que la hize al principio, pero como dije se podria cambiar y arreglar, asi le quita los caracteres especiales, etc etc
  #7 (permalink)  
Antiguo 01/04/2011, 21:20
 
Fecha de Ingreso: febrero-2009
Mensajes: 489
Antigüedad: 15 años, 2 meses
Puntos: 8
Respuesta: como trasformar espacio en guiones?

amigo yo estoy tratando de hacer eso del titulo en la url sin espacios pero poniendole el guion y nada q me da con la funcion str_replace
__________________
sitios
www.avisoya.com
www.yavendi.com
  #8 (permalink)  
Antiguo 01/04/2011, 22:20
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 14 años, 11 meses
Puntos: 322
Respuesta: como trasformar espacio en guiones?

Hace 5 meses estuvo este post.. No hubiera sido mejor que hubieras creado uno especial para tu problema? =/
__________________
Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación
¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies
  #9 (permalink)  
Antiguo 02/04/2011, 11:04
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: como trasformar espacio en guiones?

Cita:
Iniciado por charlescuella Ver Mensaje
amigo yo estoy tratando de hacer eso del titulo en la url sin espacios pero poniendole el guion y nada q me da con la funcion str_replace
Muestra el codigo que estas usando
  #10 (permalink)  
Antiguo 02/04/2011, 13:53
 
Fecha de Ingreso: febrero-2009
Mensajes: 489
Antigüedad: 15 años, 2 meses
Puntos: 8
Respuesta: como trasformar espacio en guiones?

Código PHP:
Ver original
  1. function urls_amigables($url) {
  2.  
  3. // Tranformamos todo a minusculas
  4.  
  5. $url = strtolower($url);
  6.  
  7. //Rememplazamos caracteres especiales latinos
  8.  
  9. $find = array('á', 'é', 'í', 'ó', 'ú', 'ñ');
  10.  
  11. $repl = array('a', 'e', 'i', 'o', 'u', 'n');
  12.  
  13. $url = str_replace ($find, $repl, $url);
  14.  
  15. // Añaadimos los guiones
  16.  
  17. $find = array(' ', '&', '\r\n', '\n', '+');
  18. $url = str_replace ($find, '-', $url);
  19.  
  20. // Eliminamos y Reemplazamos demás caracteres especiales
  21.  
  22. $find = array('/[^a-z0-9\-<>]/', '/[\-]+/', '/<[^>]*>/');
  23.  
  24. $repl = array('', '-', '');
  25.  
  26. $url = preg_replace ($find, $repl, $url);
  27.  
  28. return $url;
  29.  
  30. }



con este cogido ya puedo reemplazar el espacio por el guion medio pero el problema lo tengo en el .htaccess ps no me reconoce esa url no la interpreta bien



pagina/titulo-id
__________________
sitios
www.avisoya.com
www.yavendi.com

Etiquetas: espacio
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 2 personas




La zona horaria es GMT -6. Ahora son las 20:53.