Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Roznice tych samych funkcji PHP
Forum PHP.pl > Inne > Hydepark
cXIb8O3
Witam.
Jestem nowy na tym forum. Wiec mam do was takie pytanie. Czy widzicie roznice w php uzywjac je pod innymi os ami? Chodzi mi tu o zachowanie podstawowych funkcji. Jestem ciekaw czy to wam nie przeszkadza.

Ps. uwzgledniajac ten sama wersje php
NuLL
O jakich funkcjach mowisz - dokladnie ? Bo ja osobiscie roznic nie zauwazam.
cXIb8O3
np file_exists()
pod ux
file_exists("/tmp/plik%00sa");
result 0

pod w32 file_exists("C:\\tmp\plik%00sa");
result 1
dr_bonzo
A moze bys podal czy te pliki istnieja.
cXIb8O3
no istnieja.. ale chodzi mi oto ze pod ux file_exists() nie resektuje %00 a w32 respektuje
dr_bonzo
A u mnie dziala.

  1. <?php
  2. $filename = '/tmp/plik%00';
  3. $x = file_exists( $filename );
  4. var_dump( $x );
  5. echo( file_get_contents( $filename ) );
  6. ?>


Wynik: bool(true) plik%00.sa
plik%00.sa -- to zawartosc tego pliku
Moze nie wyswietla ci bledow, np. o braku dostepu do pliku.
hwao
jedyne co mi przeszkadza pod win to ze nie ma usleep" title="Zobacz w manualu php" target="_manual() czasem sie przydaje... pozatym wiecej grzechow nie widzialem..
cXIb8O3
Cytat(dr_bonzo @ 2005-11-30 14:59:43)
A u mnie dziala.

  1. <?php
  2. $filename = '/tmp/plik%00';
  3. $x = file_exists( $filename );
  4. var_dump( $x );
  5. echo( file_get_contents( $filename ) );
  6. ?>


Wynik: bool(true) plik%00.sa
plik%00.sa -- to zawartosc tego pliku
Moze nie wyswietla ci bledow, np. o braku dostepu do pliku.

pod ux... file_exists() sprawdza cała dana nazwe.. czyli
/tmp/plik%00dsadsada


ale juz pod w32 zamiast sprawdzac /tmp/plik%00dsadsada sprawdzane jest /tmp/plik poniewaz to co sie dzieje po %00 nie liczy sie juz..
jest to swego typu problem poniewaz niektorzy programisci licza na to ze jesli cos jest po zmiennej w nazwie pliku (/tmp/$fsa/sa.php) to moze byc tylko i tak sprawdzone czy plik sa.php istmieje...

pod w32 %00 powoduje to ze koncowka zostaje wylaczona (sa.php) wiec mozna sprawdzic czy istnieje dowolny plik np $fsa=../boot.ini%00

osobiscie uwazam ze php pod w32 to duza pomylka smile.gif

ps: memory_get_usage() chyba tez nie dziala pod w32.. bo kiedys chcialem ja uzyc ale nie darady.
NuLL
A ja na codzien korzystam z php pod Windowsem i jest mi z tym dobrze.

Sciezek do plikow zawierajacych na SILE dziwne znaki nie sprawdzam - albo inaczej - nie mam potrzeby sprawdzac. Do obslugi plikow wykorzystuje klase ktora zalatwia problem z separatorem katalogow. Nie widze jakichkolwiek przeszkod do korzsytania z php pod Windowsem.
cXIb8O3
Cytat(NuLL @ 2005-11-30 18:49:43)
A ja na codzien korzystam z php pod Windowsem i jest mi z tym dobrze.

Sciezek do plikow zawierajacych na SILE dziwne znaki nie sprawdzam - albo inaczej - nie mam potrzeby sprawdzac. Do obslugi plikow wykorzystuje klase ktora zalatwia problem z separatorem katalogow. Nie widze jakichkolwiek przeszkod do korzsytania z php pod Windowsem.

To zalezy do czego Ci potrzebne php. Ja analizujac bezpieczenstwo php pod w32 a freebsd widze duze rozbieznosci. Inne zachowanie, inne rozwiazania. ale ok
NuLL
Co masz na mysli mowiac analizujac bezpieczenstwo ? smile.gif

Jak dla mnie to roboty dla administratora a nie programisty.
cXIb8O3
Cytat(NuLL @ 2005-11-30 19:13:10)
Co masz na mysli mowiac analizujac bezpieczenstwo ? smile.gif

Jak dla mnie to roboty dla administratora a nie programisty.

no pod w32 php jest bardziej podatne na zwiechy, seg. f., no i mniej wydajne. no ale to tak na marginesie.. bo czasem wogole innaczej sie zachowuje niz pod jakims ux.
NuLL
Cytat
no pod w32 php jest bardziej podatne na zwiechy

Masz jakies dowody ? - skoro mowimy o php to zalozmy ze na Windowsie 2k3 Server - inne raczej na serwer procz NT i 2k Server sie nie nadaja.
cXIb8O3
Cytat(NuLL @ 2005-11-30 20:20:05)
Masz jakies dowody ? - skoro mowimy o php to zalozmy ze na Windowsie 2k3 Server - inne raczej na serwer procz NT i 2k Server sie nie nadaja.

chodzi mi bardziej o wadliwe scrypty, ktore sa wstanie zwiesic php.. tz pod w32 jest to bardziej mozliwe niz pod *ux (latwiejsze)

nie klucmy sie czy ux* czy w32 lepszy bo to nie ma sesu.. ;]
NuLL
Patrzysz ze zlej strony - nie ma patrz na skrypt, tylko na OS-a i php - dyskutujac o czyms takim trzeba zalozyc ze skrypt nie ma bledow smile.gif

Z mojej strony EOT dot Windy i X-ow winksmiley.jpg
bela
A ja miałem problem z RecursiveDirectoryIterator pod FreeBSD a pod windowsem nie. php segfaultowało.
mike
Cytat(bela_666 @ 2005-11-30 22:50:47)
A ja miałem problem z RecursiveDirectoryIterator pod FreeBSD

3 dni z życia mi to wyjęło.
RecursiveDirectoryIterator kładzie Apache'a pod FreeBSD

Zresztą pisałem o tym tutaj: klasa + funkcja]Autoload + Problem z Iteratorami, Klasa "kładzie" Apache'a

----edit----
Chociaż nie wiem do końca czy to nie jest przypadkiem wina Apache'a 2.0
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.