Zamiana liter na znaki specjalne

0

Jak w php zamienić np. "Nazwisko" na "Naz*****". Czyli chodzi mi oto aby kilka liter pozostało bez zmian a resztę zamienić.

1

Ewentualnie jeszcze można wykorzystać do tego regex'y. Mamy na forum specjalistę od regexów w PHP - @TomRiddle i jego projekt https://t-regx.com/

0
<?php echo substr_replace('Nazwisko', '***', 3, 250);   ?>

To najprościej to chyba będzie tak zrobić choć liczba gwiazdek nie będzie taka sama jak liczba liter ukrytych.

3

<?php echo substr_replace($nazwisko, '***', -3); ?>

albo

<?php echo substr_replace($nazwisko, '*****', -5); ?>

...w zależności od tego jak długie jest $nazwisko, są takie które są nawet ledwie 3-literowe (np. Lis), mozna też prosto zrobić algorytm który wytnie połowę (zaokrąglając do góry) od końca.

0
$string = "Nazwisko";
$j = strlen($string);
$newString = "";

for ($i=0; $i < $j ; $i++) 
{ 
	if ($i<3) 
	{
	$newString = $newString . $string[$i];
		
	} 
	else 
	{
		$newString = $newString . "*";
	}
	
}

echo $newString;

Tak sobie poradziłem, dzięki za pomoc.
Do zamknięcia :)

1
PavlO. napisał(a):

Jak w php zamienić np. "Nazwisko" na "Naz*****". Czyli chodzi mi oto aby kilka liter pozostało bez zmian a resztę zamienić.

To wszystko zależy od tego według jakich reguł chciałbyś podmieniać te znaki. Ile sposobów podmiany tyle rozwiązań.

PS: Np musiałbyś się zastanowić co powinno wyjść kiedy ktoś poda słowo np na 2 litery?

1 użytkowników online, w tym zalogowanych: 0, gości: 1