Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Długie słowa skrócone i zastąpione ...
Mezir
post
Post #1





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 17.05.2015

Ostrzeżenie: (0%)
-----


Witam, chciałbym zrobić, gdy ktoś ma dłuższy nick niż 20 znaków, to pokazuje pierwsze 10 znaków, a resztę zastępuje "...". Przykładowo nick "ToJestMojNowyNick" zamienia na"ToJestMojN...". Nicki mam pod zmienną $nick.
Z góry dzięki, pozdrawiam.
Go to the top of the page
+Quote Post
bobek358
post
Post #2





Grupa: Zarejestrowani
Postów: 143
Pomógł: 22
Dołączył: 17.11.2007

Ostrzeżenie: (0%)
-----


Podpowiedź strlen i substr
Go to the top of the page
+Quote Post
Mezir
post
Post #3





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 17.05.2015

Ostrzeżenie: (0%)
-----


Dzięki! Gdyby ktoś potrzebował:
  1. if(strlen($nick) <= 20)
  2. {
  3. echo $nick;
  4. }
  5. else
  6. {
  7. echo ''.substr($nick, 0, 20).'...';
  8. }


Pozdrawiam.

Ten post edytował Mezir 21.08.2015, 07:44:20
Go to the top of the page
+Quote Post
Skie
post
Post #4





Grupa: Zarejestrowani
Postów: 555
Pomógł: 84
Dołączył: 20.02.2008
Skąd: Małopolska

Ostrzeżenie: (0%)
-----


Cytat
''.


Ta konkatenacja na poczatku echo jest zbędna.

Ten post edytował Skie 21.08.2015, 07:05:44


--------------------
Wieloprocesowość i wielowątkowość w PHP, poznaj Kraken PHP!
Serwer HTTP i WebSocket w PHP | Promise/A+
Strona Domowa | Elradia MMORPG
FireFox: make the web better.
Go to the top of the page
+Quote Post
KsaR
post
Post #5





Grupa: Zarejestrowani
Postów: 520
Pomógł: 102
Dołączył: 15.07.2014
Skąd: NULL

Ostrzeżenie: (0%)
-----


Cytat(Mezir @ 21.08.2015, 07:52:28 ) *
Dzięki! Gdyby ktoś potrzebował:
  1. if(strlen($nick) <= 20)
  2. {
  3. echo $nick;
  4. }
  5. else
  6. {
  7. echo ''.substr($nick, 0, 20).'...';
  8. }


Pozdrawiam.

Hm, poprawie ci... "gdyby ktoś potrzebował" tongue.gif
Bo inni moga miec polskie znaki czy inne w stringu.
  1. echo isset($nick[20])?mb_substr($nick,0,20,'UTF-8').'...':$nick;


Hmm, ale ja bym zrobił to raczej tak:
  1. echo isset($nick[22])?mb_substr($nick,0,20,'UTF-8').'...':$nick;

Bo jak się przemyśli, gdy $nick bedzie miec 21 znaków zrobi z tego 24.
To lepiej sprawdzić czy ma 23 i zrobic z tego 20 + 3 kropki tongue.gif

Ten post edytował KsaR 28.08.2015, 22:06:56


--------------------
Go to the top of the page
+Quote Post
Comandeer
post
Post #6





Grupa: Zarejestrowani
Postów: 1 268
Pomógł: 254
Dołączył: 11.06.2009
Skąd: Świętochłowice

Ostrzeżenie: (0%)
-----


Jest jeszcze możliwość zrobienia tego przy pomocy CSS: http://jsfiddle.net/Comandeer/zmc708ze/


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 10:14