Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] przesuwanie znaków w zmiennej
-Gość-
post 3.09.2007, 10:21:24
Post #1





Goście







witajcie,
szukam, szukam i nic
mianowicie muszę przesunąć znaki w zmiennej "o 1 w prawo"
przykładowo mam zmienną
$zmienna="abcdefgh"
chcę aby została odczytana jako "bcdefghi"
czekam na odpowiedź,
pozdrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
nexis
post 3.09.2007, 10:31:25
Post #2





Grupa: Zarejestrowani
Postów: 1 012
Pomógł: 109
Dołączył: 26.09.2003
Skąd: nexis.pl

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


  1. <?php
  2. $input = 'abcdefgh';
  3. $output = '';
  4.  
  5. for ($i=0; $i<strlen($input); $i++) $output .= chr(ord($input[$i])+1);
  6.  
  7. echo $input .'->'.$output;
  8. ?>


--------------------
Zend Certified Engineer

Kliknij POMÓGŁ jeśli moja odpowiedź okazała się użyteczna!
Go to the top of the page
+Quote Post
uli
post 3.09.2007, 10:32:51
Post #3





Grupa: Zarejestrowani
Postów: 318
Pomógł: 6
Dołączył: 27.01.2005

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


Cytat(Gość @ 3.09.2007, 11:21:24 ) *
witajcie,
szukam, szukam i nic
mianowicie muszę przesunąć znaki w zmiennej "o 1 w prawo"
przykładowo mam zmienną
$zmienna="abcdefgh"
chcę aby została odczytana jako "bcdefghi"
czekam na odpowiedź,
pozdrawiam


A skąd Tobie się bierze 'i' na końcu?? Rozumiem, że to kolejna litera alfabetu, ale skąd konkretnie się tam wzięła?

Jeśli to jest dobrze to:

  1. <?php
  2. $alfabet = "abcdefghijklmnoprstuwyz";
  3. $zmienna = "abcdefgh";
  4.  
  5. $pozycja = strpos($alfabet, $zmienna);
  6. $pozycja++;
  7. $przesuniecie = substr($alfabet,$pozycja, strlen($zmienna));
  8.  
  9. echo $przesuniecie;
  10. ?>


--------------------
Prawo Wylera:
Nie ma rzeczy niemożliwych dla kogoś, kto nie musi ich zrobić sam.
Go to the top of the page
+Quote Post
Hazel
post 3.09.2007, 10:37:31
Post #4





Grupa: Zarejestrowani
Postów: 492
Pomógł: 33
Dołączył: 16.08.2007
Skąd: Wrocław

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


No to może jeszcze jeden kod tongue.gif
  1. <?php
  2. $ciag = 'a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,r,s,t,u,w,y,z'; // lub dowolny inny ciąg, może być z polskimi znakami albo z q, v i x, itp.
  3. // znaki oddzielone od siebie przecinkami
  4. $tablica = explode(',', $ciag);
  5. $zmienna = 'abcdefghij';
  6. for ($i=0; $i<strlen($zmienna); $i++)
  7. {
  8.  for ($j=0; $j<count($tablica); $j++)
  9.  {
  10. if ($zmienna{$i} == $tablica[$j])
  11. {
  12.  $zmienna{$i} = $tablica[$j+1];
  13.  break;
  14. }
  15. continue;
  16.  }
  17. }
  18. echo $zmienna;
  19. ?>


Napisałem, więc czemu mam go nie umieścić? tongue.gif


--------------------
Go to the top of the page
+Quote Post
cornholio666
post 3.09.2007, 10:39:42
Post #5





Grupa: Zarejestrowani
Postów: 472
Pomógł: 8
Dołączył: 14.03.2004
Skąd: Rzeszów

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


chr

ord

ascii table

I wszystko bedzie jasne


--------------------
I need TP for my bunghole!!!

Mój nowy przyjaciel - tytanowa płytka na stałe
------------------------------------------------------
AEGEE, kwiaciarnia rzeszów , notariusz rzeszów, zakład krawiecki rzeszów, paweł jakubowicz
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: 13.08.2025 - 23:29