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
Aleksandar.Ilic
old school
Expert
 
Datum učlanjenja: 30.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
Staro 17. 10. 2009.   #7
Gargoyle
old school
Professional
 
Datum učlanjenja: 19.04.2007
Poruke: 372
Hvala: 139
70 "Hvala" u 43 poruka
Gargoyle će postati "faca" uskoro
Default

Citat:
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.
Ovo mi se desilo previše puta, i jedno vreme sam mislio da je to stvarno moja odgovornost, i želeći da ispoštujem klijenta, ispravljao sam kôd (besplatno). Problemi su bili u upgrade-ovanju servera sa PHP4->PHP5. Naravno sada mi to ne pada na pamet da radim. U ugovoru jasno preciziram da niko ne može neovlašteno da "čeprka" po projektu koji sam ja izradio, a to uključuje i samog klijenta koji ne može (ne sme) da direktno pristupa na recimo ftp/mysql, ne sme da menja direktno fajlove i sl., niti provajder sme da (bez pitanja) menja konfiguraciju servera (što se inače redovno dešava po jeftinim shared hostingzima) -- osim ako nije posebno drugačije navedeno. Odnosno u slučaju kada oni to ipak rade, garancija ne važi, pa su dalje slobodni da rade šta hoće, o svom trošku. Dakle ili sam ja "gazda" ili je neko treće lice, ali nikako nismo zajedno gazde.

Citat:
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
Tu dolazimo do ovoga. Pametno je zakupiti ovakav hosting, gde će se moći instalirati verzija po izboru, kada mi to želimo.

I naravno klijenta treba u startu informisati spram koje verzije se radi projekat, šta to znači, koje su implikacije, šta se očekuje u budućnosti i zašto, tako da kada i ako dodje do upgrade-a servera, da ne bude iznenađenja tipa "platili smo, popravljaj za džabe".
Gargoyle je offline   Odgovorite uz citat
Staro 17. 10. 2009.   #8
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.   #9
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.   #10
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
Odgovori


Alati teme
Način prikaza

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. 22:29


Vreme je GMT +2. Trenutno vreme je 03:48.


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.