DevProTalk

Forumi IT profesionalaca
web development, web design, e-business, SEO


Idite nazad   DevProTalk > Web development i web aplikacije > PHP
Želite da se reklamirate ekskluzivno na ovoj poziciji? Javite se

PHP PHP aplikacije, Smarty, PEAR

Odgovori
 
Alati teme Način prikaza
Staro 17. 10. 2009.   #1
bluesman
Goran Pilipović
Sir Write-a-Lot
 
Avatar bluesman
 
Datum učlanjenja: 18.05.2005
Lokacija: Beograd
Poruke: 5.450
Hvala: 288
1.247 "Hvala" u 446 poruka
bluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušati
Pošaljite ICQ poruku za bluesman
Default PHP 5.3 i PHP6 deprecetated features

Danas sam instalira php 5.3 i primetio sam da ima dosta izmena. Ovo je lista svih funkcija i metoda koje su deprecated u 5.3 a većina toga će biti izbačena iz php 6 totalno.

(Za one koje mrzi da kliknu) nestaće:

Citat:
The following is a list of deprecated INI directives. Use of any of these INI directives will cause an E_DEPRECATED error to be thrown at startup.

* define_syslog_variables
* register_globals
* register_long_arrays
* safe_mode
* magic_quotes_gpc
* magic_quotes_runtime
* magic_quotes_sybase
* Comments starting with '#' are now deprecated in .INI files.

Deprecated functions:

* call_user_method() (use call_user_func() instead)
* call_user_method_array() (use call_user_func_array() instead)
* define_syslog_variables()
* dl()
* ereg() (use preg_match() instead)
* ereg_replace() (use preg_replace() instead)
* eregi() (use preg_match() with the 'i' modifier instead)
* eregi_replace() (use preg_replace() with the 'i' modifier instead)
* set_magic_quotes_runtime() and its alias, magic_quotes_runtime()
* session_register() (use the $_SESSION superglobal instead)
* session_unregister() (use the $_SESSION superglobal instead)
* session_is_registered() (use the $_SESSION superglobal instead)
* set_socket_blocking() (use stream_set_blocking() instead)
* split() (use preg_split() instead)
* spliti() (use preg_split() with the 'i' modifier instead)
* sql_regcase()
* mysql_db_query() (use mysql_select_db() and mysql_query() instead)
* mysql_escape_string() (use mysql_real_escape_string() instead)
* Passing locale category names as strings is now deprecated. Use the LC_* family of constants instead.
* The is_dst parameter to mktime(). Use the new timezone handling functions instead.

Deprecated features:

* Assigning the return value of new by reference is now deprecated.
* Call-time pass-by-reference is now deprecated.
* The use of {} to access string offsets is deprecated. Use [] instead.
Mislim da su to jako glupo smislili. Ne radi se o tome da li ću ja ili ti da upgade-ujemo u php 5.3 (ili 6) već šta se dešava sa postojećim LIVE sajtovima. Opet će da se napravi situacija kao kod prelaza sa php4 na php5 kada provajderi nisu hteli da stavljaju php5 jer pola sajtova ne bi radilo.

Recimo, sada ja imam sajt na na nekom serveru i provajder upgrade-uje na php6. I onda me cima klijent pa se zali da ne radi sajt a ja kazem "pa nisam nista menjao, nemoguće da ne radi". On u panici kuka "pa ... vidis da ne radi - uzmi i sredi - platili smo ti za to". A ti onda sedi i radi za dzabe jer su brainiacs smislili da poizbacuju gomile funkcija.
__________________
Goran Pilipović a.k.a. Ugly Fingers Bradley f.k.a. bluesman
I don't always know what I'm talking about but I know I'm right!
bluesman je offline   Odgovorite uz citat
Staro 17. 10. 2009.   #2
holodoc
član
Certified
 
Datum učlanjenja: 27.11.2007
Poruke: 71
Hvala: 10
12 "Hvala" u 11 poruka
holodoc is on a distinguished road
Default

Citat:
Originalno napisao bluesman Pogledajte poruku
Mislim da su to jako glupo smislili. Ne radi se o tome da li ću ja ili ti da upgade-ujemo u php 5.3 (ili 6) već šta se dešava sa postojećim LIVE sajtovima. Opet će da se napravi situacija kao kod prelaza sa php4 na php5 kada provajderi nisu hteli da stavljaju php5 jer pola sajtova ne bi radilo.
Pa upravo zato kod kvalitetnijih hosting provajdera postoji opcija izbora PHP verzije tako da klijent ili osobe zadužene za web sajt mogu da biraju koja verzija PHPa će "terati" njihov web sajt u bilo kom trenutku. S druge strane malo je verovatno da bi bilo koji ozbiljan provajder samoinicijativno uradio mandatorni upgrade na verziju softvera koja prethodno nije dovoljno dugo "odstajala" u repozitorijumima za trebljenje bubica čisto da bi bio u trendu i pratio modu. Zato mislim da migracija na 5.3 neće biti toliko bolna koliko se možda u ovom trenutku čini jer dok on dođe do statusa produkciono upotrebljivog PHP 6 će verovatno odavno zakucati na vrata. A i javna je tajna da PHP 5.3 nije ništa drugo nego prvi mačići "šestice".

Što se tiče izmena u 5.3 dovoljno je reći da su tolike da veći deo trenutnog gotovog softvera ne može da funkcioniše na njemu bez bar ponekog problema. Taj E_DEPRECATED je recimo napravio više štete nego koristi a u prvim buildovima navodno stabilne verzije bilo je problema da se uopšte isključi da se ne prijavljuje pa su recimo custom headeri pucali masovno. Veliki problem većini gotovih aplikacija je i to referenciranje funkcija što su dobro osetili na svojoj koži svi sistemi koji imaju implementiran neki vid hook sistema (Joomla, Drupal itd.) koji na taj način funkcioniše. Dosta problema se javilo i sa PHP framework sistemima koji žongliraju sa podrškom kako za "peticu" tako i za "četvorku" PHP-a (recimo CodeIgniter koji još uvek ima problema sa nekim bitnim stavkama zbog čega bi razvojni tim trebalo da porazmisli dokle želi da pruža podršku za PHP 4 u svom frameworku).

Da rezimiram. PHP 5.3 je u ovom trenutku, sudeći po reakcijama, stvar čiste mode. Sve što od novosti donosi jednostavno nije vredno da se uopšte razmišlja o njemu ni kao o test platformi a kamoli produkcionoj tako da bi buildovi iz 5.2.x game trebali još dugo da budu aktuelni kada su hostinzi u pitanju.
holodoc je offline   Odgovorite uz citat
Staro 17. 10. 2009.   #3
mb_sa
profesionalac
Qualified
 
Datum učlanjenja: 19.05.2007
Poruke: 123
Hvala: 13
3 "Hvala" u 3 poruka
mb_sa is on a distinguished road
Default

Citat:
Originalno napisao bluesman Pogledajte poruku
Recimo, sada ja imam sajt na na nekom serveru i provajder upgrade-uje na php6. I onda me cima klijent pa se zali da ne radi sajt a ja kazem "pa nisam nista menjao, nemoguće da ne radi". On u panici kuka "pa ... vidis da ne radi - uzmi i sredi - platili smo ti za to". A ti onda sedi i radi za dzabe jer su brainiacs smislili da poizbacuju gomile funkcija.
Iako si u pravu glede ovoga, ja moram priznati da mi je i malo drago zbog ovi funkcija i opcija koje su izbacili, jer kao sto se zna, radi o stvarima koje se pokazale kao loše rješenje (uglavnom u smislu sigurnosti i brzine).

Mnoge će se stvari rješiti putem search&replace opcije u editoru, a i vec dugo vremena na "svakom koraku" je pisalo da su preg_ brze od ereg, da treba biti iskljuceno register_global, magic_quotes_gpc, magic_quotes_runtime...
mb_sa je offline   Odgovorite uz citat
Staro 17. 10. 2009.   #4
dinke
Super Moderator
Invented the damn thing
 
Avatar dinke
 
Datum učlanjenja: 06.06.2005
Poruke: 2.371
Hvala: 370
701 "Hvala" u 194 poruka
dinke je pravi dragi kamendinke je pravi dragi kamendinke je pravi dragi kamendinke je pravi dragi kamendinke je pravi dragi kamendinke je pravi dragi kamendinke je pravi dragi kamen
Default

Ma daj blues, ajde priznaj da li si i jednu jedinu od ovih deprecated f-ja koristio u poslednje vreme?

Vec 100 godina najavljuju da ce u PHP6 izbaciti kontroverzni magic_quotes, ovo je kontam poslednja "veca" revizija pre PHP6 i logicno je da je proglase "deprecated" kako bi se ljudi navikli na to. Kome sajtovi ne rade bez toga sto rece neko, moci ce da "trche" na PHP5.x dok se to ne sredi.
__________________
Caught in a Web|Blogodak
With great power comes great responsibility!
dinke je offline   Odgovorite uz citat
Staro 17. 10. 2009.   #5
dinke
Super Moderator
Invented the damn thing
 
Avatar dinke
 
Datum učlanjenja: 06.06.2005
Poruke: 2.371
Hvala: 370
701 "Hvala" u 194 poruka
dinke je pravi dragi kamendinke je pravi dragi kamendinke je pravi dragi kamendinke je pravi dragi kamendinke je pravi dragi kamendinke je pravi dragi kamendinke je pravi dragi kamen
Default

Inace uz snow po defaultu dolazi PHP 5.3 tako da sam i ja vec presao na isti
__________________
Caught in a Web|Blogodak
With great power comes great responsibility!
dinke je offline   Odgovorite uz citat
Staro 17. 10. 2009.   #6
sinisabobic
član
Certified
 
Avatar sinisabobic
 
Datum učlanjenja: 14.08.2008
Lokacija: Beograd
Poruke: 73
Hvala: 60
173 "Hvala" u 16 poruka
sinisabobic is on a distinguished roadsinisabobic is on a distinguished road
Pošaljite ICQ poruku za sinisabobic Pošaljite poruku preko MSN za sinisabobic Pošaljite poruku preko Skype™ za sinisabobic
Default

Citat:
Originalno napisao dinke Pogledajte poruku
Ma daj blues, ajde priznaj da li si i jednu jedinu od ovih deprecated f-ja koristio u poslednje vreme?
Nije problem samo u tome da li je neko koristio ili nije, vec je problem u nasledjenim stvarima koje ima vecina programera a koje sada jednostavno rade pa nije bilo potrebe za izmenama
sinisabobic je offline   Odgovorite uz citat
Staro 17. 10. 2009.   #7
bluesman
Goran Pilipović
Sir Write-a-Lot
 
Avatar bluesman
 
Datum učlanjenja: 18.05.2005
Lokacija: Beograd
Poruke: 5.450
Hvala: 288
1.247 "Hvala" u 446 poruka
bluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušati
Pošaljite ICQ poruku za bluesman
Default

Citat:
Originalno napisao dinke Pogledajte poruku
Ma daj blues, ajde priznaj da li si i jednu jedinu od ovih deprecated f-ja koristio u poslednje vreme?

Vec 100 godina najavljuju da ce u PHP6 izbaciti kontroverzni magic_quotes, ovo je kontam poslednja "veca" revizija pre PHP6 i logicno je da je proglase "deprecated" kako bi se ljudi navikli na to. Kome sajtovi ne rade bez toga sto rece neko, moci ce da "trche" na PHP5.x dok se to ne sredi.
Pa pazi ovo, koji je OBJEKTIVAN razlog da se onemogući:

PHP kôd:
set_magic_quotes_runtime(0); 
A možeš i dalje:
PHP kôd:
ini_set("magic_quotes_runtime"0); 
Prvo je deprecated, a drugo je sada ok? Zbog čega?

Slažem se da su te magic quotes samo pravile nepotrebnu zabunu i bile uzrok mnogih bug-ova, ali zašto izbaciti funkciju? Kada bi stavili da funkcija stoji samo ne radi ništa (jer je ionako izbačeno magic quotes) je daleko bolje za backward compatibility nego da kompletno izbace funkciju pa se generiše fatal error i puca script.

Dalje, globalno milijarde linija koda koriste "ereg" funkcije, šta ljudi da rade kada se to izbaci? Da menjaju sve svoje klase zbog toga? Kome će to da naplate?

Takođe sam puno koristio {} u stringovima, a šta sada da radim? Da pretražujem svuda gde sam to koristio da mi script ne bi pucao zbog gluposti.

Ja sam mislio da su ovi iz PHP nešto naučili u prethodnoj velikoj migraciji sa 4 na 5, ali oni sada prave još veće gluposti, i sve mi više liči na situaciju kada izigravaju Bogove "baš nas briga, tako je kako mi odlučimo, a ti ako nećeš da menjaš - neće ti raditi script".

Tako će i ovi što prave razne Joomle, CodeIgnitere i ostale slične stvari da totalno pošize od milijarde pitanja "od jednom mi se pojavljuje neka greška" ili "ne radi mi sajt" ili "prikazuje mi se prazna strana".

Što se tiče hosting provajdera, tu se na žalost najmanje pitaš ti. Prvo što retko imaš uticaja na izbor provajdera, a drugo što imaš još manje uticaja na njihove odluke.

Ipak mislim da ako neko hoće da pređe jednog dana na PHP6 neka skine ovaj 5.3 bar da vidi gde će imati problema.
__________________
Goran Pilipović a.k.a. Ugly Fingers Bradley f.k.a. bluesman
I don't always know what I'm talking about but I know I'm right!
bluesman je offline   Odgovorite uz citat
Staro 17. 10. 2009.   #8
dinke
Super Moderator
Invented the damn thing
 
Avatar dinke
 
Datum učlanjenja: 06.06.2005
Poruke: 2.371
Hvala: 370
701 "Hvala" u 194 poruka
dinke je pravi dragi kamendinke je pravi dragi kamendinke je pravi dragi kamendinke je pravi dragi kamendinke je pravi dragi kamendinke je pravi dragi kamendinke je pravi dragi kamen
Default

Citat:
Originalno napisao bluesman Pogledajte poruku
Takođe sam puno koristio {} u stringovima, a šta sada da radim? Da pretražujem svuda gde sam to koristio da mi script ne bi pucao zbog gluposti.
Sticem utisak da ovo nisi skapirao. Ne radi se o iskljucenju "complex" sintakse (tipa "ovo je string sa varijablom {$var}" vec o tretiranju stringa kao niz (kao u C-u) tipa treci char je $string[2]. Ranije je za to moglo da se koristi $string{2} a sada je to deprecated.

Kao i za ereg(i) i kod ovoga jedan search/replace resava problem
__________________
Caught in a Web|Blogodak
With great power comes great responsibility!
dinke je offline   Odgovorite uz citat
Staro 17. 10. 2009.   #9
holodoc
član
Certified
 
Datum učlanjenja: 27.11.2007
Poruke: 71
Hvala: 10
12 "Hvala" u 11 poruka
holodoc is on a distinguished road
Default

Citat:
Originalno napisao bluesman Pogledajte poruku
Pa pazi ovo, koji je OBJEKTIVAN razlog da se onemogući:

PHP kôd:
set_magic_quotes_runtime(0); 
A možeš i dalje:
PHP kôd:
ini_set("magic_quotes_runtime"0); 
Prvo je deprecated, a drugo je sada ok? Zbog čega?
I magic_quotes_runtime od verzije 5.3 spada u DEPRECATED kategoriju kao i sve što je na bilo koji način povezano za magic_quotes sistemom.
Citat:
Originalno napisao bluesman Pogledajte poruku
Slažem se da su te magic quotes samo pravile nepotrebnu zabunu i bile uzrok mnogih bug-ova, ali zašto izbaciti funkciju? Kada bi stavili da funkcija stoji samo ne radi ništa (jer je ionako izbačeno magic quotes) je daleko bolje za backward compatibility nego da kompletno izbace funkciju pa se generiše fatal error i puca script.
Još od kako se prvi put pojavio na PHP sceni za magic_quotes sistem je jasno stavljeno do znanja da je zbog kompatibilnosti sa starijim verzijama PHPa i potencijalnih problema sa konfiguracijama servera potrebno da kod bude u mogućnosti da funkcioniše i kada je magic_quoutes uključen i kada je isključen. Ja mislim da je to bila ubedljivo najčešće navođena napomena po raznim tutorijalima, kursevima i dokumentaciji. Ako prelazni period od pa sad već skoro više od 10 godina od kako se termin magic quotess prvi put pojavio (PHP v2) nije dovoljan da se neke loše programerske navike eliminišu onda zaista nemam komentara.
Citat:
Originalno napisao bluesman Pogledajte poruku
Takođe sam puno koristio {} u stringovima, a šta sada da radim? Da pretražujem svuda gde sam to koristio da mi script ne bi pucao zbog gluposti.
"Vitičaste" zagrade u PHP5.3 i dalje omogućavaju da string podaci u sebi sadrže blokove koji referenciraju promenjljive tipa "Nešto {$promenjljiva} još nešto" ali nije moguće više pristupati karakterima stringa putem vitičastih zagrada tipa $promenjljiva{8}.
Citat:
Originalno napisao bluesman Pogledajte poruku
Tako će i ovi što prave razne Joomle, CodeIgnitere i ostale slične stvari da totalno pošize od milijarde pitanja "od jednom mi se pojavljuje neka greška" ili "ne radi mi sajt" ili "prikazuje mi se prazna strana".
Neće oni da šize nego korisnici tih sistema mada iskreno i bez novog PHPa nisu se nešto proslavili
Citat:
Originalno napisao bluesman Pogledajte poruku
Što se tiče hosting provajdera, tu se na žalost najmanje pitaš ti. Prvo što retko imaš uticaja na izbor provajdera, a drugo što imaš još manje uticaja na njihove odluke.
Ovo je sada već pre svega pitanje ozbiljnosti naručioca posla jer ako se već na samom početku škrtari na kvalitetnom hostingu mislim da je pametnije celu stvar odmah na početku saseći i sačuvati živce. A ozbiljni hosting provajderi itekako vode računa o softverskoj sceni i potencijalnim problemima koji mogu da se jave sa softverom njihovih klijenata. Čak i da se kasnije tokom eksploatacije stvori neki problem izazvan svojevoljom provajdera postoji jedna jako efikasna pravna zaštita od maltretiranja klijenta a to je navođenje tačnih tehničkih specifikacija eksploatacionog okruženja. Odgovarati za samovolju hosting provajdera koji je samoinicijativno instalirao problematičnu verziju PHPa uprkos tehničkoj specifikaciji bi bilo otprilike isto kao kada bi neko sada tužio razvojni tim zato što je udario grom u hosting server na kome se nalazi sajt

Usput evo jednog interesantnog dokumenta za one koje zanima šta je to novo što PHP 5.3 (realno i PHP "šestica") zaista donosi sa sobom.

http://conf.phpquebec.com/slides/200...uebec_2009.pdf
holodoc je offline   Odgovorite uz citat
Staro 17. 10. 2009.   #10
Aleksandar.Ilic
old school
Expert
 
Datum učlanjenja: 29.04.2006
Poruke: 464
Hvala: 39
48 "Hvala" u 28 poruka
Aleksandar.Ilic is on a distinguished road
Default

a ja licno, sam odavno prestao da koristim sve stvari koje su oznacene sa depreciated... zlu ne trebalo
__________________
Vesti sa juga --- BizBuzz
--- Vas mali oglas
Aleksandar.Ilic je offline   Odgovorite uz citat
Odgovori



Pravila pisanja
Možete ne započinjati nove teme
Možete ne slati odgovore
Možete ne slati priloge
Možete ne izmeniti svoje poruke
vB kôd je Uključen
Smajliji su Uključen
[IMG] kod je Uključen
HTML kôd je Isključen
Pogledajte forum

Slične teme
Tema Početna poruka teme Forum Odgovori Poslednja poruka
Ovo je trebao biti PHP6! Ilija Studen PHP 7 10. 08. 2008. 21:29


Vreme je GMT +2. Trenutno vreme je 22:47.


Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.
Mišljenja, saveti, izjave, ponude ili druge informacije ili sadržaji nastali na Sajtu su vlasništvo onoga ko ih je kreirao, a ne DevProTalk.com, tako da ne morate da se oslanjate na njih.
Autori poruka su jedini odgovorni za ovakve sadržaje. DevProTalk.com ne garantuje tačnost, kompletnost ili upotrebnu vrednost informacija, stavova, saveta ili datih izjava. Ne postoje uslovi pod kojima bi mi bili odgovorni za štetu ili gubitak koji je posledica bilo čijeg oslanjanja na nepouzdane informacije, ili bilo kakve informacije nastale kroz komunikaciju između registrovanih članova.
Web sajt može sadržavati linkove na druge web sajtove na Internetu ili neke druge sadržaje. Ne kontrolišemo niti podržavamo te druge web sajtove, niti smo pregledali bilo kakve sadržaje na takvim sajtovima. Mi nećemo biti odgovorni za legalnost, tačnost ili prikladnost bilo kog sadržaja, oglasa, proizvoda, usluga ili informacije lociranim na ili distribuiranih kroz druge web sajtove, niti za bilo kakvu štetu nastalu kao posledica takvih informacija. DevProTalk.com drži i čuva druga prava vlasništva na web sajtu. Web sajt sadrže materijale zaštićene copyright-om, zaštitne znakove i druge informacije o pravu vlasništva ili softver. Članovi mogu poslatu informacije zaštićene pravima vlasništva njihovih nosilaca i ona ostaju zaštićena bez obzira da li su oni koji prenose te informacije to naveli ili ne. Osim informacija koje su u javnom vlasništvu ili za koje dobijete dozvolu, nemate pravo da kopirate, modifikujete ili na bilo koji način menjate, objavljujete, prenosite, distribuirate, izvršavate, prikazujete ili prodajte bilo koju informaciju zaštićenu pravima vlasništva. Slanjem informacija ili sadržaja na bilo koji deo DevProTalk.com, Vi automatski dozvoljavate i predstavljate garanciju da imate pravo da dozvolite DevProTalk.com ili članovima DevProTalk.com bespovratnu, kontinualnu, neograničenu, globalnu dozvolu da koriste, kopiraju, izvršavaju, prikazuju i distribuiraju takve informacije i sadržaje i da iz takvih sadžaja koriste bilo koji deo u bilo koje svrhe, kao i pravo i dozvolu da koriste gore navedene sadržaje. Svi zaštitni znakovi (trademarks), logotipi, oznake usluga, firme ili imena proizvoda koji se pominju na ovom web sajtu su vlasništvo kojim raspolažu njihovi vlasnici.