jacus1211
16.10.2007, 17:47:39
Witam! Mam problem. Nie działa mi operacja złączenia tablic. Wpisałem wszystko dokładnie tak, jak było napisane w książce. Nie działa. Biorę więc gotowy kod z płyty dołączonej do książki. Też nie działa. Czy może mieć na to wpływ fakt, że mam 'angielski' komputer (tzn. mam angielskiego Windowsa)?
Oto ten skrypt:
<?php
1 => 1,
2 => 2,
3 => 3
);
3 = "trzy"
4 = "cztery",
5 = "pięć"
);
$c = $a + $b;
?>
Gdy go wpisałem, wyskakiwało mi takie coś:
array(5) { [1]=> int(1) [2]=> int(2) [3]=> int(3) [4]=> int(4) [5]=> int(5) }
Bardzo proszę o odpowiedź.
Z góry dziękuję i pozdrawiam! Jacek Baliński
Mogę sie zapytać skąd.. z jakiej książki to wziąłeś. Taki zapis nie ma prawa działać.
Pisane z palca:
<?php
1 => 1,
2 => 2,
3 => 3
);
4 => 'cztery',
5 => 'pięć',
6 => 'sześć'
);
$c = $a + $b;
?>
Będzie działać na pewno. Tylko uważaj, na tablice z takimi samymi kluczami. Dodawana (druga) tablica Ich nie nadpisze.
jacus1211
16.10.2007, 18:11:17
Z książki wydawnictwa Helion "Praktyczny kurs PHP5".
Wpisałem to i teraz wyskakuje mi takie coś:
Parse error: syntax error, unexpected '=', expecting ')' in
C:\Program Files\Apache Group\Apache2\htdocs\index.php on line
9
Co robić?

<?php
$a = array(
1 => 1,
2 => 2,
3 => 3
);
$b = array(
3 = "trzy"
4 = "cztery",
5 = "pięć"
);
$c = $a + $b;
var_dump($c)
?>
Tak dokładnie wpisałem. I dupa
To chyba swój przekleiłeś. Bo to co Tobie dałem to co innego.
jacus1211
16.10.2007, 18:20:26
Sorki, pomyliło mi się... Teraz poprawiłem na:
<?php
$a = array(
1 => 1,
2 => 2,
3 => 3
);
$b = array(
3 => 'trzy',
4 => 'cztery',
5 => 'piec'
);
$c = $a + $b;
var_dump($c)
?>
I pokazuje mi taki komunikat:
array(5) { [1]=> int(1) [2]=> int(2) [3]=> int(3) [4]=> string(6) "cztery" [5]=> string(4) "piec" }
A jak zmieniłem w zmiennej $b trzy na cztery, cztery na pięć, pięć na sześć (tak jak to podałeś), wyskakuje to samo.
Na pewno nie wyskakuje to samo, przyjrzyj sie dokładnie :]
matix
16.10.2007, 18:28:04
Głupio piszesz, w dodatku w złym dziale - to nie jest programowanie obiektowe. Ucz się, a nie zaśmiecaj swoimi bezsensownymi postami tego forum.
Takie pytania to do forum "przedszkole", lecz i tak zaniżysz poziom takimi głupotami.
Sorry, taka prawda. Powodzenia w nauce.
jacus1211
16.10.2007, 18:32:08
No tak, ale prawie to samo. Nie wiesz może, jak można to jeszcze inaczej zrobić? Bo ja już nie wiem

.
Matix - czego ty chcesz? Chcę się tylko dowiedzieć pewnej rzeczy. Dopiero zaczynam się uczyć PHP. Być może to nie jest programowanie obiektowe, nie znam się na tym. Ale jak nie potrafisz odpowiedzieć na moje pytanie, to się nie odzywaj! Ja się grzecznie pytam, a ty mi wyjeżdzasz z takimi tekstami :/.
To, że jesteś już super w PHP, chyba nie upoważnia cię do takiego traktowania nowicjuszy

. Bo to się po prostu przykro człowiekowi robi.
Ale przecież po tym tablice są złączone. Teraz nie wiem, tak naprawdę, czego oczekujesz. Jaki ma być wynik tego łączenia tablic?
matix
16.10.2007, 18:44:40
Po pierwsze, piszesz tak nie jasno, że nie wiem o co ci chodzi - z resztą nie tylko ja Cie nie rozumiem.
Nigdzie nie pisałem, że umiem dobrze php - zwracam ci tylko uwagę na twoje zachowanie - forum.php to nie śmietnik.
3. Dopisz tagi do tematu i konkretnie sprecyzuj czego chcesz;
4. Nie ten dział;
5. Myśl, bo to są proste rzeczy, a jak nie umiesz, to ok - pytaj, ale nie w złym dziale. To tak jakbyś przyjechał do dealera Forda i chciał kupić Mercedesa

Pewnie znowu coś od niechlujstwa źle SKOPIOWAŁEŚ. Postaraj się bardziej w tym co robisz, bo jak mówią - po charakterze pisma poznaje się człowieka.
jacus1211
16.10.2007, 18:59:08
No właśnie nie są złączone
Wpisałem tak:
<?php
$a = array(
1 => 1,
2 => 2,
3 => 3
);
$b = array(
4 => "cztery",
5 => "piec",
6 => "szesc"
);
$c = $a + $b;
var_dump($c)
?>
Myślę, że wszystko jest poprawnie.
I wyszło na ekranie takie coś:
array(6) { [1]=> int(1) [2]=> int(2) [3]=> int(3) [4]=> string(6) "cztery" [5]=> string(4) "piec" [6]=> string(5) "szesc" }
A to chyba nie o to chodzi...
Matix - zróbmy tak: dokończmy tutaj ten temat, a potem sobie go wyrzućcie. Druga sprawa: ja przepisałem tak, jak było w książce. Trzeci dzień się uczę i sam z siebie nie pozmieniam tego skryptu, bo po prostu nie wiem, jak.
Balut
16.10.2007, 19:10:54
Sprawdź jak działa funkcja var_dump() na
http://pl2.php.net ...
A tak poza tym wszystko jest już dobrze...
jacus1211
16.10.2007, 19:18:09
Jak wpisuję ten kod:
<?php
$a = array(
1 => 1,
2 => 2,
3 => 3
);
$b = array(
4 => 'cztery',
5 => 'pięć',
6 => 'sześć');
$c = $a + $b;
var_dump($c);
?>
To wychodzi takie coś:
array(6) { [1]=> int(1) [2]=> int(2) [3]=> int(3) [4]=> string(6) "cztery" [5]=> string(4) "piec" [6]=> string(5) "szesc" }
Tak to ma wyglądać?
matix
16.10.2007, 19:35:30
Zamień sobie var_dump() na print_r i dodaj html-owy znacznik <pre> - dla czytelności.
<?php
1 => 1,
2 => 2,
3 => 3
);
4 => 'cztery',
5 => 'pięć',
6 => 'sześć');
$c = $a + $b;
?>
Pzdro.
jacus1211
16.10.2007, 19:38:36
Skopiowałem ten kod, co mi Matix podałeś, i na ekranie się pojawiło takie coś:
Array
(
[1] => 1
[2] => 2
[3] => 3
[4] => cztery
[5] => piec
[6] => szesc
)
Rozumiem, że to jest prawidłowo?
no sorry, ale Ty się Nas pytasz?
matix
16.10.2007, 19:41:09
Cytat
Rozumiem, że to jest prawidłowo?
O to to ja powinienem zapytać Ciebie ? Skąd ja mam wiedzieć, jak ty to chcesz mieć. Z mojego punktu widzenia jest ok.
Rób inne, normalne i bardziej sensowne i praktyczne ćwiczenia a nie takie bzdety, z tego się PHP nie nauczysz

Pzdr.
jacus1211
16.10.2007, 19:43:18
No powinnieneś Matix wiedzieć, bo podawałeś mi ten kod

. W każdym razie dziękuję wszystkim, którzy się tu wypowiadali

. Pozdro
Cysiaczek
16.10.2007, 20:38:06
Obiektowy temat jak diabli... : (
Przenoszę na Przedszkole
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.