Skocz do zawartości

[php/delphi] problem z array


Pieter

Rekomendowane odpowiedzi

Mam taki kod w php i musze go przetłumaczyć na delphi ale zupełnie nie wiem jak czy możecie mi pomóc?

 

<?

for ($i = 1; $i < count ($result_array); $i++) {

 

$player_array = explode (" ", $result_array[$i], 3);

 

$player[$player_counter] = array (

'player' => ereg_replace ("\^[0-9]{1}", "",str_replace ("\"", "", $player_array[2])),

'ping' => intval ($player_array[1]),

'frags' => intval ($player_array[0]));

?>

<tr>

<td width="400"><? echo $player[$player_counter][player]; ?></td>

<td width="50" align="center"><? echo $player[$player_counter][ping]; ?></td>

<td width="50" align="center"><? echo $player[$player_counter][frags]; ?></td>

</tr>

<? } ?>

 

a wartość m/w tak:

26 45 "^7kaze ^4^4^7+"

31 30 "lol"

28 50 "makavelithedon"

10 43 "King"

3 130 "^7^7^1R^1^1^7ocky"

Odnośnik do komentarza
Udostępnij na innych stronach

Pieter, podpowiem ci tak. W Pascal/Delphi tablice deklarujemy w ten sposób:

var
tablica: array [1..10, 1..10] of byte;

1..10, 1..10 to zakres tablicy, czyli jak w ten sposób zadeklarujemy, możemy dawać [1,1], [10,10], ale już nie możemy np. [23,45].

Jak chcesz przypisać jakąś wartość do tablicy, to wykonujesz to podobnie jak w GML czyli np.:

tablica[6,4]:=78;

Teraz powinieneś sobie poradzić z przeniesieniem kodu ;) .

Odnośnik do komentarza
Udostępnij na innych stronach

akurat o tym wiem co mi napisałeś ale i tak dzięki. A ie mugł byś plzzz ty przenieść mi kod plzzz

 

właściwie chodzi mi tylko o to:

 

$player[$player_counter] = array (

'player' => ereg_replace ("\^[0-9]{1}", "",str_replace ("\"", "", $player_array[2])),

'ping' => intval ($player_array[1]),

'frags' => intval ($player_array[0]));

 

z resztą sobie poradze :P :)

 

Piernicze chyba sie przeżuce z mojego forum na wasze :/

Odnośnik do komentarza
Udostępnij na innych stronach

$string = str_replace('"', '', $player_array[2]); // usuniecie cudzyslowia ( " ) ze zmiennej

$value1 = ereg_replace('\^[0-9]{1}', '', $string); // usuniecie wyrazenia '\^[0-9]{1}' ze zmiennej
$value2 = intval($player_array[1]); // zamiana zmiennej na typ integer (liczbowy)
$value3 = intval($player_array[0]); // j/w

$player[$player_counter] = array('player' => $value1, 'ping' => $value2, 'frags' => $value3); // podstawienie tablicy do zmiennej (takze tablicy)

Odnośnik do komentarza
Udostępnij na innych stronach

Hm, muszę przyznać, że za bardzo nie wiem. Przeszukałem parę książek o Pascalu i nie mogłem znaleźć zamiany znaków, ale jeszcze poszukam. Jak coś wykombinuję to dam znać, chyba, że ktoś inny pomoże.

 

EDIT: Hm, chyba rzeczywiście, Gnysek ma rację. W Pascalu najprawdopodobniej nie ma wyrażeń regularnych.

Odnośnik do komentarza
Udostępnij na innych stronach

Nie musicie sie aż tak bawić poprostu napiszcie mi algorytm gdzieki któremu zamienie taki string:

 

26 45 "^7kaze ^4^4^7+"

31 30 "lol"

28 50 "makavelithedon"

10 43 "King"

3 130 "^7^7^1R^1^1^7ocky"

 

w array taki :

 

zamienna := player_array[3,1] // w tej sekcji array kryje sie liczba 10 czyli 3 player 1 wartosc

zamienna := player_array[3,2] // w tej sekcji array kryje sie liczba 43 czyli 3 player 2 wartosc

zamienna := player_array[3,3] // w tej sekcji array kryje sie nazwa "king" czyli 3 player 3 wartosc

// 3 player licząc od zera!

 

chyba zrozumieliście?

Odnośnik do komentarza
Udostępnij na innych stronach

to chociaż powiedzcie jak zamienić taki string:

 

26 45 "^7kaze ^4^4^7+"

31 30 "lol"

28 50 "makavelithedon"

10 43 "King"

3 130 "^7^7^1R^1^1^7ocky"

 

na taki array W GML a z resztą sobie poradze oO

 

zamienna = player_array[3,1] // w tej sekcji array kryje sie liczba 10 czyli 3 player 1 wartosc

zamienna = player_array[3,2] // w tej sekcji array kryje sie liczba 43 czyli 3 player 2 wartosc

zamienna = player_array[3,3] // w tej sekcji array kryje sie nazwa "king" czyli 3 player 3 wartosc

// 3 player licząc od zera!

 

czy to naprawde jest takie trudne???

 

 

P.S. SRY ZA DOUBLEPOST!

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...