Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] "Konwersja" tekstu
Forum PHP.pl > Forum > Przedszkole
kayy
Witam,

mam tablice która zawiera podobne wpisy:

Kod
$arr[0] = 1,2,3,4;

$arr[1] = 5,6,7,8;

$arr[2] = 3,5,7,8;

$arr[3] = 9,5,6,7;


itd.

Teraz mam problem: muszę zamienić te wpisy na taką formę:
Kod
$wyjscie[0] = a,1,2,3;

$wyjscie[1] = c,5,6,7

$wyjscie[2] = c,3,5,7;

$wyjscie[3] = b,9,5,6;


Czyli po prostu ostatnią cyferkę zamienić na literkę,zsadzić ją przed wszystko i dodać przecinek, a ostatni usunąć...

Lecz nie wiem jak to zrobić... Może mi ktoś pomóc?

Proszę pisać tutaj albo na gg (5086051)




Dziękuję,

kayy
Foxx
A wg. jakiego algorytmu dobierane są literki do wstawienia na początek?
Jeżeli to bez znaczenia to użyj substr()" title="Zobacz w manualu PHP" target="_manual.
Potem konkatenacja ciągów
  1. <?php
  2. $ciag = "1, 2, 3";
  3. $ciag = "a".$ciag; // daje ciąg "a1, 2, 3"
  4.  
  5. Jeżeli musisz wiedzieć jaka cyfra jest zdejmowana z końca ciągu to może:
  6. ?>

explode()" title="Zobacz w manualu PHP" target="_manual - rozbijesz tym swoje ciągi po przecinku na poszczególne liczby i otrzymasz tablicę.
kayy
Ważne jest, że np. 1 to literka g itd.




Hmm... Może jest jakiś inny sposób niż rozbijanie tego na tablice ? Bo nie wiem dokładnie (i chyba to jest nie wydajne) jak zamienić co 4 cyferkę na literkę która poprzedza 4 tablice niżej i potem z co odliczać co 4 i zrobić z tego ponownie tablice...
Foxx
Nadal nie wiem jaki jest klucz dobierania literek. Czy przechowujesz gdzieś pary cyfra -> litera? Dlaczego 1 to literka "g"? Można ten problem rozwiązać na wiele sposobów.

  1. <?php
  2. $wyjscie[0] = "1,2,3,4";
  3.  
  4. $wyjscie[0] = substr($wyjscie[0], 0, -2);
  5. $wyjscie[0] = "g,".$wyjscie[0];
  6.  
  7. echo $wyjscie[0]; // daje "g,1,2,3"
  8. ?>


Żeby przetworzyć całą tabelę użyj pętli foreach().
kayy
Ok, już sam doszedłem do tego, aczkolwiek dziękuję!
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.