Hlavní navigace

Verze PHP v ČR

Jakub Vrána 16. 1. 2006

Zajímalo mě, jaké je zastoupení PHP v ČR. Díky firmě Nexen jsou k dispozici celosvětové statistiky, detailní rozdělení po jednotlivých státech však chybí.

Metodika

Sběr dat byl realizován robotem, který se identifikoval jako Server version checker (http://php.vrana.cz/verze-php-v-cr.php?heslo=m7ezw846) ve dnech 5. – 6. 1. 2006. Protokolem HTTP byly navštíveny všechny domény s koncovkou .cz doplněné o začátek www.. Robot pokládal dotazy HEAD na titulní stránku, přesměrování nebylo sledováno:

<?php
$result = mysql_query("SELECT * FROM domeny ORDER BY id");
while ($row = mysql_fetch_assoc($result)) {
    $server = "NULL";
    $fp = @fsockopen("www.$row[domena]", 80, $errno, $errstr, 5);
    if ($fp) {
        $server = "''";
        fwrite($fp, "HEAD / HTTP/1.1\r\n");
        fwrite($fp, "Host: www.$row[domena]\r\n");
        fwrite($fp, "User-Agent: Server version checker (http://php.vrana.cz/verze-php-v-cr.php?heslo=m7ezw846)\r\n");
        fwrite($fp, "Connection: close\r\n");
        fwrite($fp, "\r\n");
        while (($s = fgets($fp))) {
            if (eregi("^Server:(.*)", $s, $matches)) {
                $server = "'" . addslashes(trim($matches[1])) . "'";
                break;
            }
        }
        fclose($fp);
    }
    mysql_query("UPDATE domeny SET server = $server WHERE id = $row[id]");
}
mysql_free_result($result);
?> 

Hodnota hlavičky přesahující jeden řádek bohužel nebyla zohledněna, výsledky by to však myslím příliš neovlivnilo.

Webové servery

Webové servery v ČR
celkem 206244 100 %
nedostupné 15124 7 %
neuvedeno 7591 4 %
Apache 139340 68 %
Apache 1 48098 23 %
Apache 2 27992 14 %
IIS 41035 20 %
celkem PHP 50702 25 %

Serverům v české doméně jasně dominuje Apache, stále převládá verze 1, i když téměř u poloviny Apache serverů není verze uvedena. Pevné postavení má i MS Internet Information Server, všechny ostatní servery nemají dohromady ani 2 %. Jako nedostupné jsou uvedeny servery, ke kterým se nepodařilo připojit, neuvedeno zahrnuje servery, které hlavičku Server neposlaly.

<?php
$celkem = mysql_result(mysql_query("SELECT COUNT(*) FROM domeny"), 0);
echo "<tr><th>celkem</th><td>$celkem</td><td>100 %</td></tr>\n";
foreach (array(
    "nedostupné" => "IS NULL",
    "neuvedeno" => "= ''",
    "Apache" => "LIKE '%Apache%'",
    "Apache 1" => "LIKE '%Apache/1%'",
    "Apache 2" => "LIKE '%Apache/2%'",
    "IIS" => "LIKE '%IIS%'",
    "celkem PHP" => "LIKE '%PHP%'",
) as $key => $val) {
    $pocet = mysql_result(mysql_query("SELECT COUNT(*) FROM domeny WHERE server $val"), 0);
    echo "<tr><th>$key</th><td>$pocet</td><td>" . round(100 * $pocet / $celkem) . " %</td></tr>\n";
}
?> 

PHP je k dispozici na čtvrtině serverů, ale vzhledem k nepoměru k výsledkům Apache usuzuji, že na spoustě dalších serverů bude přítomnost PHP skryta např. pomocí direktivy expose_php. Možná by stálo za to pokusit se odhadnout přítomnost PHP ještě nějak jinak, např. existencí odkazů na soubory s koncovkou .php. Firmě Nexen vyšlo pro doménu .cz pokrytí 39,79 % přesto, že používají obdobnou metodiku. Jediné vysvětlení, které mě napadá, je jiný výběr domén.

Verze PHP

PHP verze
Verze PHP v ČR
PHP 50702 100 %
PHP 3 690 1 %
PHP 4.0 301 1 %
PHP 4.1 5116 10 %
PHP 4.2 851 2 %
PHP 4.3 27851 55 %
PHP 4.4 12145 24 %
PHP 5.0 3553 7 %
PHP 5.1 521 1 %

PHP 4 má pořád jasnou většinu, i když je možné spekulovat s tím, že svědomití správci instalující aktuální verze mají zároveň přítomnost PHP ukrytou, na obhájení mizivého zastoupení verze 5.1 to ale stačí jen stěží (i když např. server PHP triky je přesně příklad tohoto stavu).

<?php
$celkem = mysql_result(mysql_query("SELECT COUNT(*) FROM domeny WHERE server LIKE '%PHP%'"), 0);
echo "<tr><th>PHP</th><td>$celkem</td><td>100 %</td></tr>\n";
foreach (array("3", "4.0", "4.1", "4.2", "4.3", "4.4", "5.0", "5.1") as $val) {
    $pocet = mysql_result(mysql_query("SELECT COUNT(*) FROM domeny WHERE server LIKE '%PHP/$val%'"), 0);
    echo "<tr><th>PHP $val</th><td>$pocet</td><td>" . round(100 * $pocet / $celkem) . " %</td></tr>\n";
}
?> 

Součet jednotlivých verzí je větší než celkové zastoupení PHP kvůli serverům, které používají a uvádějí více verzí PHP zároveň.

Závěr

Zastoupení PHP 5 je i rok a půl po uvedení této verze mizivé, jasnou většinu má v doméně .cz stále verze PHP 4 a nic nenasvědčuje tomu, že by se do budoucna měla situace rychle změnit.

Zdrojová data mám ještě uschovaná, takže pokud by vás zajímaly další informace, neváhejte se zeptat v diskuzi.

Našli jste v článku chybu?

16. 1. 2006 3:02

Jde o to, že test nezkoumá, kolik hostingů nabízí PHP5, ale kolik webů používá PHP5. Tedy poptávku, nikoliv nabídku.

A s tím, že téměř každý hosting podporuje PHP 5.1 jste hodně přestřelil, nechtěl jste říct "téměř žádný"?

16. 1. 2006 10:28

uživatel si přál zůstat v anonymitě
oprava: me se PHP hlasilo v hlavicce X-Powered, v hlavicce Server o nem ani zminka
Podnikatel.cz: Přehledná titulka, průvodci, responzivita

Přehledná titulka, průvodci, responzivita

Měšec.cz: Air Bank zruší TOP3 garanci a zdražuje kurzy

Air Bank zruší TOP3 garanci a zdražuje kurzy

120na80.cz: Pánové, pečujte o svoje přirození a prostatu

Pánové, pečujte o svoje přirození a prostatu

Vitalia.cz: Znáte „černý detox“? Ani to nezkoušejte

Znáte „černý detox“? Ani to nezkoušejte

Měšec.cz: Nenechte se ošidit, když vám staví dům

Nenechte se ošidit, když vám staví dům

Podnikatel.cz: K EET. Štamgast už peníze na stole nenechá

K EET. Štamgast už peníze na stole nenechá

Lupa.cz: Teletext je „internetem hipsterů“

Teletext je „internetem hipsterů“

DigiZone.cz: Sony KD-55XD8005 s Android 6.0

Sony KD-55XD8005 s Android 6.0

DigiZone.cz: ČT má dalšího zástupce v EBU

ČT má dalšího zástupce v EBU

Měšec.cz: Finančním poradcům hrozí vracení provizí

Finančním poradcům hrozí vracení provizí

Podnikatel.cz: Babiše přesvědčila 89letá podnikatelka?!

Babiše přesvědčila 89letá podnikatelka?!

Vitalia.cz: Jsou čajové sáčky toxické?

Jsou čajové sáčky toxické?

Měšec.cz: Jak vymáhat výživné zadarmo?

Jak vymáhat výživné zadarmo?

Měšec.cz: Jak levně odeslat balík přímo z domu?

Jak levně odeslat balík přímo z domu?

Vitalia.cz: Paštiky plné masa ho zatím neuživí

Paštiky plné masa ho zatím neuživí

Root.cz: Vypadl Google a rozbilo se toho hodně

Vypadl Google a rozbilo se toho hodně

Vitalia.cz: 9 největších mýtů o mase

9 největších mýtů o mase

Podnikatel.cz: EET: Totálně nezvládli metodologii projektu

EET: Totálně nezvládli metodologii projektu

Podnikatel.cz: Podnikatelům dorazí varování od BSA

Podnikatelům dorazí varování od BSA

Lupa.cz: Co se dá měřit přes Internet věcí

Co se dá měřit přes Internet věcí