Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> formatowanie stringa
hhg
post 27.07.2006, 17:50:04
Post #1





Grupa: Zarejestrowani
Postów: 316
Pomógł: 0
Dołączył: 5.07.2006

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


jak moge rozbić string postaci
20060312

na postać z myślnikami po 4 znaku i po 6 znaku
2006-03-12
?
Go to the top of the page
+Quote Post
AxZx
post 27.07.2006, 19:42:41
Post #2





Grupa: Zarejestrowani
Postów: 1 385
Pomógł: 55
Dołączył: 1.03.2005
Skąd: śląsk

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


np
podzielic na czesci
  1. <?php
  2. ?>

a pozniej polaczyc, pamietajac o dolozeniu myslnikow:)


--------------------
aplikacje internetowe | Symfony
Go to the top of the page
+Quote Post
Aure
post 27.07.2006, 22:02:34
Post #3





Grupa: Zarejestrowani
Postów: 48
Pomógł: 0
Dołączył: 3.05.2004
Skąd: Warszawa

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


Wersja przydka ale chyba najwydajniesza:

  1. <?php
  2. $str[0].$str[1].$str[2].$str[3].'-'.$str[4].$str[5].'-'.$str[6].$str[7]
  3. ?>

smile.gif


--------------------


Go to the top of the page
+Quote Post
mike
post 27.07.2006, 22:07:10
Post #4





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Cytat(Aure @ 27.07.2006, 23:02 ) *
Wersja przydka ale chyba najwydajniesza:

  1. <?php
  2. $str[0].$str[1].$str[2].$str[3].'-'.$str[4].$str[5].'-'.$str[6].$str[7]
  3. ?>

smile.gif

I najmniej poprawna tongue.gif
Do elementów stringa nie można tak sie odwoływać.

Powinno być:
  1. <?php
  2. $str{0}.$str{1}.$str{2}.$str{3}.'-'.$str{4}.$str{5}.'-'.$str{6}.$str{7}
  3. ?>
Go to the top of the page
+Quote Post
Aure
post 27.07.2006, 22:57:03
Post #5





Grupa: Zarejestrowani
Postów: 48
Pomógł: 0
Dołączył: 3.05.2004
Skąd: Warszawa

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


Cytat(mike_mech @ 27.07.2006, 23:07 ) *
I najmniej poprawna tongue.gif
Do elementów stringa nie można tak sie odwoływać.

A z jakiego to powodu? Stringi to tablice znaków i można na nich operować tak samo jak na tablicach. Obydwa sposoby są poprawne.


--------------------


Go to the top of the page
+Quote Post
NuLL
post 27.07.2006, 23:30:08
Post #6





Grupa: Zarejestrowani
Postów: 2 262
Pomógł: 21
Dołączył: 3.05.2004
Skąd: Sopot, Krakow, W-wa

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


Ale wy macie hardcorowe pomysly
Kod
<?php
echo preg_replace("#^(/d{4})(/d{2})(/d{2})$#","$1-$2-$3","20060312");
?>

Sorry za [code] ale IPB sie chrzani przy regularkach w [php] winksmiley.jpg
Cytat
Obydwa sposoby są poprawne.

BZDURA - owszem oba dzialaja ale zalecanym sa nawiasy klamrowe. W manualu jest wyraznie napisanie aby nie odwololywac sie jak do tablicy.


--------------------
Javascript, Coffeescript, Node.js, Mongo, CouchDb, chmury, workery & inne bajery - zycie jest zbyt krotkie aby miec nudna prace :)
Go to the top of the page
+Quote Post
bendi
post 29.07.2006, 11:26:03
Post #7





Grupa: Zarejestrowani
Postów: 401
Pomógł: 5
Dołączył: 14.09.2003
Skąd: Wrocław

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


Cytat(NuLL @ 28.07.2006, 00:30 ) *
BZDURA - owszem oba dzialaja ale zalecanym sa nawiasy klamrowe. W manualu jest wyraznie napisanie aby nie odwololywac sie jak do tablicy.


A w którym miejscu, bo w tym manualu z którego ja korzystam jest akurat zupełnie odwrotnie tongue.gif

Cytat("Manual php")
String access and modification by character

Characters within strings may be accessed and modified by specifying the zero-based offset of the desired character after the string using square array-brackets like $str[42] so think of a string as an array of characters.

Note: They may also be accessed using braces like $str{42} for the same purpose. However, using square array-brackets is preferred.


A tak wogóle to tę regularkę skądś znam, tylko że u mnie na stronie jest poprane odwołanie do klasy znakowej:
\d
http://bedkowski.pl/a/php_regex/3/

Ten post edytował bendi 29.07.2006, 11:27:52


--------------------
Go to the top of the page
+Quote Post
mike
post 29.07.2006, 15:19:07
Post #8





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Cytat(bendi @ 29.07.2006, 12:26 ) *
A w którym miejscu, bo w tym manualu z którego ja korzystam jest akurat zupełnie odwrotnie tongue.gif

To go sobie zaktualizuj: Łańcuchy znaków (string) :: Indeksowanie łańcucha (ofsety)
Cytat
Dostęp do pojedynczego znaku łańcucha jest możliwy po podaniu jego indeksu (ofsetu) w nawiasach klamrowych, zaraz po nazwie zmiennej. Pierwszy znak w łańcuchu ma indeks zero.

Notatka: Dla zachowania kompatybilności wstecznej, nadal można używać nawiasów kwadratowych, jednak składnia ta w php 4 uznana jest za przestarzałą.
Go to the top of the page
+Quote Post
bendi
post 30.07.2006, 08:32:42
Post #9





Grupa: Zarejestrowani
Postów: 401
Pomógł: 5
Dołączył: 14.09.2003
Skąd: Wrocław

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


Ja tam się zawsze sugerowałem tym: http://pl2.php.net/manual/en/language.types.string.php, ale wygląda na to że to faktycznie jakaś stara wersja.

Nic zwracam honor.


--------------------
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 Wersja Lo-Fi Aktualny czas: 14.08.2025 - 10:25