Nadchodzi PHP 7, który będzie dwa razy szybszy od PHP 5.6

Nadchodzi PHP 7, który będzie dwa razy szybszy od PHP 5.6

    przez -
    30 7053
    PHP
    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.

    Podobne artykuły

    • Mateusz Tracz

      “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ę.

      • Agata Bublewicz

        Witam, będziemy jeszcze pisać o PHP 7, ukaże się bardziej obszerny artykuł, gdzie na pewno o tym wspomnimy :) Pozdrawiam

      • Mateusz Tracz

        +1
        Dziękuję przynajmniej za nie obrażanie się :)
        Niestety rzadko jest to spotykane w Polskim internecie.

      • Tomek Primke

        Macie już konkretne plany odnośnie tego artykułu, czy to tylko taka “raczkująca” koncepcja?

      • Agata Bublewicz

        Mamy już konkretne plany :)

    • Anonim

      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 ?

      • pablo

        Może ze względów wydajnościowych?

      • Anonim

        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.

      • Roman

        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.

      • Anonim

        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 ?”.

      • Marcin

        A może Hack jest odpowiedzą na twoje potrzeby? https://en.wikipedia.org/wiki/Hack_%28programming_language%29

      • Roman

        Przecież typy sprawdza tylko kompilator/lint. Potem dla VM nie powinny być już potrzebne. No ale to PHP.

      • Jakub Konieczny

        Dla każdej zmiennej byłoby upierdliwe, a per metoda by ograniczyć możliwości błędów.

      • Anonim

        Dlaczego upierdliwe ?
        Powinno to być po prostu opcjonalne typowanie.
        Jak dla kogoś typowanie jest upierdliwe, to nie musiałby wtedy tego robić i tyle.

    • R

      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 ;-)

      • Anonim

        Read about WebSockets. This is better than normal apps.

    • gosc

      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.

      • Anonim

        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.

      • gosc

        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.

      • Sobak

        Wystarczy przejrzeć benchmarki i zobaczyć liczby. Zyski sięgają 100% przy realnych aplikacjach, na takim samym sprzęcie.

    • abec

      Szybciej o 100%? Naprawdę?
      Czyli potrzebuje zero czasu na wykonanie dowolnej operacji?
      Bo tyle wyjdzie po zmniejszeniu obecnego czasu o 100%

      • thecoolkid

        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 ;)

    • #R2D2#

      A co się stało z wersją nr 6?

    • g-lo

      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.

    • cycuś

      zacznijcie używać perl’a i po problemie
      co za ludzie….
      przecież perl to doskonały język

    • JLover

      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%

      • thecoolkid

        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. ;)

    • Marek

      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