PHP jest językiem skryptowym, służącym głównie do projektowania stron internetowych, jest on rozprowadzony na otwartej licencji, każdy może pobrać kopie oraz używać bez żadnych ograniczeń. Zarówno do celów komercyjnych jak i prywatnych. Język ten jest łatwy w nauce oraz umożliwia tworzenie profesjonalnych stron WWW. Razem z rozwojem języka zaczęły powstawać coraz to nowsze wydania z ulepszeniami.
Już za kilkanaście tygodni nastąpi premiera PHP 7. To wydanie języka będzie się charakteryzowało dwukrotnie zwiększoną szybkością w stosunku do PHP 5.6. A to za sprawą całkowicie nowego silnika Zend Engine. Według wstępnych testów system WordPress potrafi działać o 100% szybciej. Zmniejszono także zużycie pamięci, co na pewno ucieszy firmy hostingowe oraz administratorów. Dzięki temu serwery udźwigną teraz znacznie większy ruch, bez żadnych dodatkowych kosztów.
PHP 7 będzie zawierać także ulepszoną składnię zmiennych, wewnętrznie spójną i kompletną. Pozwoli to na użycie operatorów: ->, [], (), {} i :: z dowolnymi poprawnymi wyrażeniami po lewej.
Kolejną zmianą, zresztą bardzo kontrowersyjną czyli wskazywanie typów skalarnych oraz zwracanych wartości przez funkcje/metodę. W nowej wersji będziemy mogli wskazywać jakiego typu argumenty przyjmie dana funkcja oraz jakiego typu jest zwracany wynik. Gdy warunki te nie będą spełnione nastąpi wystąpienie błędu ( Catchable fatal error
)
Planowana data wydania nowej wersji to 12 listopada 2015 roku.
„PHP 7 będzie zawierać także ulepszoną składnię zmiennych, wewnętrznie spójną i kompletną. Pozwoli to na użycie operatorów: ->, [], (), {} i :: z dowolnymi poprawnymi wyrażeniami po lewej.”
Jak już piszecie jakieś artykuły dotyczące programowania to niech to napisze chociaż jakiś programista.
Naprawdę powyższe, szczególnie „ulepszoną składnię zmiennych”… to coś o czym warto wspominać? Serio? :D
Co to w ogóle znaczy nawet?
Nie lepiej byłoby napisać o zmianach w TYPOWANIU? Np. „scalar type hinting”: https://wiki.php.net/rfc/scalar_type_hints
Nie wiem jak to przetłumaczyć poprawnie, nie jestem redaktorem.
Nie obrażajcie się, mam nadzieję, że przyjmiecie to jako konstruktywną krytykę.
Witam, będziemy jeszcze pisać o PHP 7, ukaże się bardziej obszerny artykuł, gdzie na pewno o tym wspomnimy :) Pozdrawiam
+1
Dziękuję przynajmniej za nie obrażanie się :)
Niestety rzadko jest to spotykane w Polskim internecie.
Macie już konkretne plany odnośnie tego artykułu, czy to tylko taka „raczkująca” koncepcja?
Mamy już konkretne plany :)
Ktoś może wie, dlaczego typowanie zmiennych jest tylko dla argumentów funkcji i jej zwracanej wartości ? Dlaczego tego nie wprowadzili w klasach, no i dla każdej innej zmiennej ?
Może ze względów wydajnościowych?
Hmmm … A to nie po to do języków dodaje się możliwość typowania, gdyż są wtedy wydajniejsze ? Może coś pokręciłem, dlatego czekam na ewentualne sprostowanie.
Głównie dodaje się po to by móc zweryfikować statycznie poprawność programu podczas kompilacji (zamiany w bytecode).
Typy podstawowe mogą poprawić wydajność, gdyż nie trzeba stosować wtedy domyślnie uniwersalnych typów o dużej pojemności.
To dobry argument – ma to sens, choć przydałoby się coś takiego choćby w klasach. To może zmienię pytanie na: „Czy są w ogóle plany rozszerzenia typowania zmiennych w PHP7 ?”.
A może Hack jest odpowiedzą na twoje potrzeby? https://en.wikipedia.org/wiki/Hack_%28programming_language%29
Przecież typy sprawdza tylko kompilator/lint. Potem dla VM nie powinny być już potrzebne. No ale to PHP.
Dla każdej zmiennej byłoby upierdliwe, a per metoda by ograniczyć możliwości błędów.
Dlaczego upierdliwe ?
Powinno to być po prostu opcjonalne typowanie.
Jak dla kogoś typowanie jest upierdliwe, to nie musiałby wtedy tego robić i tyle.
Dobra informacja! Ale na produkcyjną stabilizację tej wersji poczekamy jeszcze rok po wydaniu.
Starting httpd: /bin/bash: line 1: 5481 Segmentation fault /usr/sbin/httpd
Nie działa ;-)
Read about WebSockets. This is better than normal apps.
Na takie zapewnienia o szybszej pracy trzeba uważać, bo FF to działał 2x szybciej, ale tego, że na 4x szybszym sprzęcie to już nie napisali. Może nowy PHP działa 100% szybciej gdy jest 10x więcej procesorów? Nie wiem, z PHP korzystam okazjonalnie i nie jestem ortodoksyjnym fanem tego języka.
A co ma Firefox do PHP7 ?
PHP7 wykonuje się po stronie serwera i szybkość przeglądarka nijak ma się do jego kodu pisanego w języku PHP ( ani w innym języku serwerowym ).
Z tego co wiem, to chodziło o produkcyjną maszynę – nic w niej ( podobno, na czas testów ) nie zmieniano.
Po prostu obawiam się, że PHP powieli zasadę, na której działa 90% otwartego softu. A to jest zbyt użyteczny język na takie wyskoki, pół Internetu na tym działa.
Wystarczy przejrzeć benchmarki i zobaczyć liczby. Zyski sięgają 100% przy realnych aplikacjach, na takim samym sprzęcie.
Szybciej o 100%? Naprawdę?
Czyli potrzebuje zero czasu na wykonanie dowolnej operacji?
Bo tyle wyjdzie po zmniejszeniu obecnego czasu o 100%
Działać o 100% szybciej, nie skrócić czas wykonywania o 100%.
Wykonywać o 100% szybciej, czyli szybkość wykonywania wyniesie 200%, czyli 2x.
Czas potrzebny na wykonanie tych samych czynności ulegnie tym samym skróceniu również dwukrotnie.
Procenty to wartości względne, same w sobie nic nie znaczą. To inny sposób zapisu ułamków i domyślnie oblicza się je od podstawy, którą jest wartość wyjściowa, a nie wynik końcowy. Dlatego o 100% więcej od jednego to 2, a o 50% mniej niż 2 to 1.
A więc skrypty będą się wykonywać o 100% szybciej, a czas ulegnie skróceniu o 50%.
Radzę wrócić na matematykę do podstawówki ;)
A co się stało z wersją nr 6?
uruchomiłem ten PHP7 na VPS na jakim pracuje jakieś 25 wordpressów i jedno forum na mybb. To co zauważyłem to: spadła ilość zużywanej pamięci na serwerze, wzrosło obciążenie serwera, nie zauważyłem, aby którakolwiek ze stron ładowała się szybciej niestety (moje subiektywne odczucie), nie działa z nim phpmyadmin :]
Strony chodzą w trybie fast-cgi. Wersja PHP7 to najnowszy nightly na debianie, aktualizowany na bierząco z tej strony http://repos.zend.com/zend-server/early-access/php7/repos/ubuntu/. Konfiguracja php, dokładnie taka sama jak na php5.6, który także działa na serwerze. Z php 5.6 obecnie nie korzysta żadna z tych stron.
Nasze strony „fruwają” na „7”. I do tego zużycie pamięci spadło o _ponad_ połowę. Ten zachwyt ma bardzo praktyczny wymiar a migracja jest łatwa.
zacznijcie używać perl’a i po problemie
co za ludzie….
przecież perl to doskonały język
O 100% szybciej, czyli nie będzie potrzebował w ogóle czasu na wykonanie. Nieuki, jak już piszecie takie bzdury i chcecie napisać, że 2x szybciej to piszcie o 50%
Następny co podstawówki nie skończył ;)
Muszę zrobić cytat z siebie:
„Działać o 100% szybciej, nie skrócić czas wykonywania o 100%.
Wykonywać o 100% szybciej, czyli szybkość wykonywania wyniesie 200%, czyli 2x.
Czas potrzebny na wykonanie tych samych czynności ulegnie tym samym skróceniu również dwukrotnie.
Procenty to wartości względne, same w sobie nic nie znaczą. To inny sposób zapisu ułamków i domyślnie oblicza się je od podstawy, którą jest wartość wyjściowa, a nie wynik końcowy. Dlatego o 100% więcej od jednego to 2, a o 50% mniej niż 2 to 1.
A więc skrypty będą się wykonywać o 100% szybciej, a czas ulegnie skróceniu o 50%.”
O 50% szybciej, to 1.5x, nie 2x. ;)
Temat PHP 7 został fajnie omówiony na PHPersach w Poznaniu. Wklejam link do filmiku i polecam obejrzeć: https://www.youtube.com/watch?v=g3caJBJ_IrQ