![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 259 Pomógł: 1 Dołączył: 3.07.2011 Ostrzeżenie: (0%) ![]() ![]() |
Mam skrypt który rozpakowuje zip'a i muszę sprawdzać czy rozpakowanie się udało. Mam więc
Natrafiłem w końcu na serwer na którym zamiast TRUE zwraca 1 więc łapie się na wykluczenie i wypluwa: nie udalo sie rozpakowac: 1 jak teraz to sprytnie zrobic? Rozwiazanie pewnie jest banalne ale po tylu h chyba juz nie mysle ;/ Dzieje się tak przy nadpisaniu pliku. Sprawdzałem plik się nadpisuje poprawnie Ten post edytował Octobus 5.12.2011, 21:45:53 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 4 340 Pomógł: 542 Dołączył: 15.01.2006 Skąd: Olsztyn/Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Rzutowanie typu
Kod (boolean) $zip->extractTo(dirname(__FILE__).'/') http://www.php.net/manual/en/language.type...boolean.casting Ten post edytował skowron-line 5.12.2011, 22:06:28 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 259 Pomógł: 1 Dołączył: 3.07.2011 Ostrzeżenie: (0%) ![]() ![]() |
Dzięki kolego ale przedwczesnie sie cieszylem ;/
Kod if($rozpakuj = (boolean) $zip->extractTo(dirname(__FILE__).'/') !== TRUE) nadal zwraca Cytat nie udalo sie rozpakowac: 1 (IMG:style_emoticons/default/sad.gif) Ten post edytował Octobus 5.12.2011, 22:26:02 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
PHP po prostu tak wyświetla zmienną booleanowską w tekście: http://ideone.com/f1gWn
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 259 Pomógł: 1 Dołączył: 3.07.2011 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
1. Przypisanie wartości do zmiennej obejmij nawiasem - teraz do $rozpakuj przypisujesz wartość porównania.
2. $a = true; echo 'ala: ' . $a; // "ala 1" |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 259 Pomógł: 1 Dołączył: 3.07.2011 Ostrzeżenie: (0%) ![]() ![]() |
Kod $rozpakuj = (boolean) $zip->extractTo(dirname(__FILE__).'/'); if($rozpakuj !== TRUE) die('nie udalo sie rozpakowac: '.$rozpakuj); daje Cytat nie udalo sie rozpakowac: :/ |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 387 Pomógł: 66 Dołączył: 31.03.2005 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#9
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 387 Pomógł: 66 Dołączył: 31.03.2005 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
Nie będzie błędne, a chodzi o wyświetlenie mu co dokładnie zwróci funkcja.
Choć wiem, że true a nie 1 |
|
|
![]()
Post
#11
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat $rozpakuj = (boolean) $zip->extractTo(dirname(__FILE__).'/'); No to daje przecież poprawnie... extractTo zwrócił false i wszystko się zgadza. I przestan rzytować na boolean bo extractTo zwraca boolean.if($rozpakuj !== TRUE) die('nie udalo sie rozpakowac: '.$rozpakuj); daje Cytat nie udalo sie rozpakowac: :/ Cudny ja się ciebie pytam po co to: swtich(true) { ? |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 387 Pomógł: 66 Dołączył: 31.03.2005 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
Chciałem koledze wyświetlić co dokładnie zwraca funkcja (IMG:style_emoticons/default/wink.gif)
To nie dla mnie (IMG:style_emoticons/default/biggrin.gif) |
|
|
![]()
Post
#13
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cudny pytam się po raz kolejny:
switch(true) Totalny bezsens. Do switch zapodaje się zmiennej a nie TRUE. TO zawsze jest prawdziwe. Robisz switch potem w case walisz warunki. Po co? To co zrobiles robi się IFem a nie switch. Poza tym to zwraca zmienna to do tego sluzy VAR_DUMP() a nie zadne kombinowanie. Co do problemu głównego: na innnym serwerze nie udaje się rozpakować, stad masz takie rzeczy jakie masz. Cytat rozpakuj = (boolean) $zip->extractTo(dirname(__FILE__).'/'); if($rozpakuj !== TRUE) die('nie udalo sie rozpakowac: '.$rozpakuj); daje Cytat nie udalo sie rozpakowac: To pokazuje wyraźnie, że nie można rozpakować. Zaś to: if($rozpakuj = $zip->extractTo(dirname(__FILE__).'/') !== TRUE) die('nie udalo sie rozpakowac: '.$rozpakuj); Daje ci w rezultacie 1 bo: extractTo zwraca false. W efekcie masz taki warunek: if($rozpakuj = false !== TRUE) A to kolejnosc wykonywania: 1)false !== TRUE to daje true 2) if($rozpakuj =true) 3) warunek spelnionu, rozpakuj ma true w efekcie widzisz ze sie nie udalo i masz 1. Proste i logiczne Chcesz miec prawidlowo, to uzyj nawiasow (o czym już dawno wspominał ci Crozin) a na przyszlosc poczytaj o kolejnosci wykonywania zadan if(($rozpakuj = $zip->extractTo(dirname(__FILE__).'/')) !== TRUE) die('nie udalo sie rozpakowac: '.$rozpakuj); Czyli jeszcze raz na koniec: na drugim serwerze poprostu nie udaje się rozpakować. Tyle w temacie.
Powód edycji: [nospor]:
|
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 387 Pomógł: 66 Dołączył: 31.03.2005 Skąd: Kielce Ostrzeżenie: (0%) ![]() ![]() |
Cudny pytam się po raz kolejny bo widze nie kumasz: switch(true) Totalny bezsens. Do switch zapodaje się zmiennej a nie TRUE!!! TO zawsze jest prawdziwe. Robisz switch potem w case walisz warunki. Po co? Po co? To co zrobiles robi się IFem a nie switch. (IMG:style_emoticons/default/wink.gif) zależy kto w jaki sposób korzysta z warunków. Jeśli chodzi o instrukcje warunkową switch to bardzo ładnie mi porządkuje kod. W tym wypadku jest to faktycznie do d..y ale zrobiłem to z przyzwyczajenia. Zobacz jak ładnie można zwalidować dane pobrane z formularza:
Ten post edytował cudny 6.12.2011, 11:07:19 |
|
|
![]()
Post
#15
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
$error = !empty($_POST['test']) && is_array($_POST['test']) ? false : true;
(IMG:style_emoticons/default/tongue.gif) Cytat W tym wypadku jest to faktycznie do d..y ale zrobiłem to z przyzwyczajenia. I o to mi chodziło. zwykły var_dump() i po sprawie.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.10.2025 - 08:09 |