Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

143
Vistas
PHP str_replace matriz para eliminar espacios y volver a colocar con - y / con - también problema

Tengo un problema con mi siguiente fragmento, funciona más o menos... lo que debo hacer es reemplazar los espacios con - y también quiero reemplazar / con - pero está agregando el doble para / ya que está solicitando espacios a ambos lados de y no estoy seguro de cómo resolverlo.

PHP

 $optimise_product_name_pre = "Simplified PHP Invoice / Billing System"; $optimise_product_name = str_replace(array(" ","/"), array("-",""), $optimise_product_name_pre); return $optimise_product_name;

PRODUCCIÓN:

simplificado-php-factura--sistema-de-facturación

ESPERADO:

simplificado-php-factura-sistema-de-facturación

over 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

A veces, el reemplazo de cadenas no se puede realizar con precisión usando un str_replace() , por lo que todo lo que tiene que hacer es dividir el proceso en 2 llamadas separadas a str_replace()

 $optimise_product_name_pre = "Simplified PHP Invoice / Billing System"; $optimise_product_name = str_replace(" / ", "-", $optimise_product_name_pre); $optimise_product_name = str_replace(" ", "-", $optimise_product_name); echo $optimise_product_name;

Resultado

 Simplified-PHP-Invoice-Billing-System

Si realmente desea que la cadena resultante esté en minúsculas, agregue un strtolower() como este

 $optimise_product_name_pre = "Simplified PHP Invoice / Billing System"; $optimise_product_name = str_replace(" / ", "-", $optimise_product_name_pre); $optimise_product_name = str_replace(" ", "-", $optimise_product_name); echo strtolower($optimise_product_name);

Resultado

 simplified-php-invoice-billing-system

Por supuesto, reemplace mi echo con el return que estaba usando si esto realmente está en una función.

En un examen más detenido, esto también funciona

 $optimise_product_name_pre = "Simplified PHP Invoice / Billing System"; $optimise_product_name = str_replace(array(" /"," "), array("","-"), $optimise_product_name_pre); echo strtolower($optimise_product_name);
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda