Vriendelijke string voor functie

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Loek Lemmens

Loek Lemmens

12/01/2021 21:36:26
Quote Anchor link
Hallo,


Voor javascript functie wil ik graag een vriendelijke string retourneren vanuit PHP.

Ik ben al aan het stoeien geweest maar zit nog met een ding wat ik niet voor elkaar krijg.


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
$string
= "Baby's en Kinderen";
echo str_replace(' ', '-', strtolower(preg_replace('/[^a-zA-Z ]/', '-', $string)));
//output: baby-s-en-kinderen
?>


Maar als er een spatie en een special teken achter elkaar komen krijg ik 2 minus tekens achter elkaar.
Stel dat ik dit een string heb Peuters / Kleuters dan krijg ik peuters---kleuters Kan ik op een of andere manier zorgen dat dit maar een minus character word, dus peuters-kleuters?
Gewijzigd op 12/01/2021 21:37:24 door Loek Lemmens
 
PHP hulp

PHP hulp

25/04/2024 12:27:33
 
Rob Doemaarwat

Rob Doemaarwat

12/01/2021 22:14:32
Quote Anchor link
1) Een "+" in een regex geeft aan "1 karakter of meer". Meerdere "onvriendelijke karakters" worden dan dus vervangen door een enkele "-".
2) Evt. "-" aan begin en eind kun je er gewoon af trimmen.
3) Waarom eerst de spaties uitsluiten, en vervolgens alsnog door een "-" vervangen?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
echo strtolower(trim(preg_replace('/[^a-zA-Z]+/', '-', $string), '-'));
 
Ozzie PHP

Ozzie PHP

12/01/2021 22:36:57
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php

function friendly($string) {
  return preg_replace('/\W+/', '-', strtolower($string));
}


echo friendly("Baby's en Kinderen");

?>
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.