Vorbereiten auf PHP 7

Im August dieses Jahres endet der aktive Support für PHP 5. Danach gibt es noch ein Jahr länger Patches gegen Sicherheitslücken geben, aber so langsam müssen sich Entwickler und Anwender darauf einstellen, ihre PHP-Programme rechtzeitig auf die neue Version PHP 7 zu migrieren. Durch diese klaren Festlegungen zur Support-Dauer wollen die Entwickler einen Fehler wie beim Erscheinen von PHP 5 vermeiden. Damals hatten sie nämlich kein eindeutiges Ende für die Vorversion PHP 4 vorgegeben, die deshalb noch recht lange gewartet werden musste. Das PHP-Projekt hat PHP 7 genutzt, um viele zuvor als "deprecated" abgekündigte Altlasten aus PHP herauszunehmen und die teilweise inkonsistente und undokumentierte Semantik aufzuräumen. Unter anderem zur sauberen Implementierung eines abstrakten Syntaxbaums überarbeiteten die Entwickler die Syntax von PHP 7 bezüglich der Verwendung von Variablen. PHP-Programmierer müssen aber nicht nur auf Altes verzichten - sie bekommen mit PHP 7 auch viele neue Features, die die Arbeit mit der Skriptsprache sicherer und komfortabler machen.

2017-06-18T14:02:19+02:00Juni 18th, 2017|Allgemein, PHP|Kommentare deaktiviert für Vorbereiten auf PHP 7

Kein Support mehr für PHP 5

Am heutigen 1. Januar 2017 hat PHP 5.6 als letzte 5er-Version der beliebten Script-Sprache das Ende seiner aktiven Supportphase erreicht: Die aktuelle Version PHP 5.6.30 wird das letzte reguläre PHP-5-Release sein, das herausgekommen ist. Danach gibt es nur noch das neueste Haupt-Release PHP 7 bzw. PHP 7.1. An PHP 5 wird auch ab sofort nicht mehr weiter entwickelt. Allerdings versprechen die Entwickler, kritische Sicherheitslücken in PHP 5.6 noch bis Ende 2019 zu stopfen – aber spätestens zu diesem Zeitpunkt sollte man auf eine 7er-Version der Scriptsprache aufgestiegen sein. Die Web-Statistiker von W3tech fanden PHP 7 bisher nur auf 2,5% der untersuchten Internetseiten, die PHP nutzen. PHP 5.6 wird auf 21% der PHP-Sites eingesetzt, der Rest verteilt sich auf ältere, nicht mehr gepflegte PHP-Versionen. Nach Angaben von W3tech nutzen über 80% der 10 Millionen populärsten Websites PHP. Etwas freundlicher kommt die Statistik von packagist.org, dem Standard-Repository des PHP-Package-Managers Composeherüber: Hier kamen PHP 7.0 und 7.1 im November 2016 zusammen zumindest auf gut 36% der Zugriffe und PHP 5.6 auf 37%. Aber leider erfolgen auch bei packagist.org ein Viertel aller Zugriffe mit veralteten und nicht mehr supporteten PHP-Versionen.

2017-01-01T20:28:43+02:00Januar 1st, 2017|Allgemein, PHP|Kommentare deaktiviert für Kein Support mehr für PHP 5

Gleich zwei neue Releases von Symfony

Das  PHP-Framework Symfony, dessen Entwicklung vor ca. zehn Jahren im Rahmen der Begeisterung für Ruby on Rails startete, ist jetzt in gleich zwei neuen Releases veröffentlicht worden. Funktionell sind die beiden Versionen 2.8 und 3.0 komplett gleich. Das Release 3.0 wirft aber zusätzlich auch Altlasten über Bord und wird so einfach schneller. Wie Ruby baut auch Symfony auf die Model View Controller (MVC)-Architektur. Symfony wurde in PHP 5 geschrieben und wird zurzeit unter der Leitung von Fabien Potencier entwickelt und gepflegt, der jetzt im Blog die Veröffentlichung von Symfony 2.8 und 3.0 ankündigte. Neue Funktionen in Symfony Zu den neuen Funktionen der beiden Versionen 2.8 und 3.0 gehören eine neue LDAP-Komponente, die Änderung der Prioritäten von Event-Listenern und auch einige Security-Erweiterungen. Auch beim Debugging und Profiling hat sich einiges geändert. Die komplette Liste der Änderungen gegenüber Symfony 2.7 finden Sie in dem Blog-Beitrag, mit dem Potencier die Beta-Version von Symfony 2.8 ankündigte. Viele der Neuerungen in Symfony betreffen den Umgang mit Web-Formularen, zu denen es einen zusätzlichen Eintrag gibt. Die Rückwärtskompatibilität Das Programmier-Team hat jetzt auch einige der alten Funktionen für überholt erklärt (deprecated). In der Version 3.x wurden viele dieser veralteten Funktionen ausrangiert und dann die Minimalanforderung für PHP dementsprechend auf die Version 5.5.9 angehoben.  So erreicht man zwar eine bessere Leistung, allerdings müssen die Entwickler ihren Programmcode eventuell noch entsprechend anpassen. Die Version Symfony 2.8 bietet die neuen [...]

2015-12-02T07:16:01+02:00Dezember 2nd, 2015|Allgemein, Webwerkzeuge|Kommentare deaktiviert für Gleich zwei neue Releases von Symfony

Serverzeit unter PHP 5 einstellen

Wenn die Zeit auf dem Server, auf dem Sie Ihre PHP-Anwendung hosten, nicht ihrer lokalen Zeit entspricht, ließ sich das bis PHP 5 beispielsweise mit dem nachfolgenden Code in der PHP-Startseite korrigieren: $today=date(‚Y-m-d-G‘); $today=strftime(“%Y-%m-%d-%H”, strtotime(“$today -2 hour”)); Mit diesem Beispiel wird die Serverzeit um zwei Stunden zurückgestellt. Ab PHP 5.1 sollte man zur Einstellung der korrekten Zeitzone allerdings besser die Funktion date_default_timezone_set() dafür benutzen. Das Beispiel legt die Zeitzone für London fest: date_default_timezone_set(‘Europe/London’);

2014-07-13T11:04:16+02:00Juli 13th, 2014|PHP|Kommentare deaktiviert für Serverzeit unter PHP 5 einstellen

PHP: Dateien mit DirectoryIterator auslesen

Was macht man, wenn man Dateien aus einem Verzeichnis auflisten soll und das Directory Listing ist deaktiviert und kann auch per .htaccess nicht eingeschaltet werden? Wenn PHP 5.0.0 oder höher zur Verfügung steht, ist das ein Fall für die neue interne Klasse DirectoryIterator. Hier das entsprechende Script:   <?php // Auszulesendes Verzeichnis $verz = 'dateiverzeichnis/'; ?> <table border="0" cellpadding="3" cellspacing="3">     <tr>     <th>Name</th>     <th>Größe</th>     <th>Aktualisierung</th>     </tr> <?php // Directory auslesen und Dateien ausgeben foreach (new DirectoryIterator($verz) as $datei) {     // Nur Dateien     if (!$datei->isDir() && !$datei->isDot())     {         echo '<tr>';         echo '<td><a href="'.$verzeichnis.$datei->getFilename().'">';         echo $datei->getFilename(). '</a></td>';         echo '<td>' .ceil( $datei->getSize()/1024 ). ' KB</td>';         echo '<td>' .date( 'd.m.Y', $datei->getMTime() ). '</td>';         echo "</tr>\n";     } }  // Tabellenende echo '</table>'; ?>

2012-11-08T19:21:20+02:00November 8th, 2012|PHP|Kommentare deaktiviert für PHP: Dateien mit DirectoryIterator auslesen

Pfadkonstante in PHP 5

Wer interaktive Internetseiten mit PHP programmiert, entwickelt seine Anwendung in der Regel zunächst auf einem Entwicklungsserver oder in einem Entwicklungsverzeichnis wie beispielsweise neu. meinedomain.de. Seit PHP 5 ist die Konstante __FILE__ nutzbar, über die man recht einfach den absoluten Pfad bestimmen kann: $pfad=dirname(__FILE__); Damit lässt sich auch der Projektpfad einfach  durch eine Konfigurationsdatei im Rootverzeichnis der Anwendung bestimmen: define('PROJECTPFAD', dirname(__FILE__)); Seit PHP 5.3 kennt die Sprache auch die Pfadvariable __DIR__ , die das Ganze noch einfacher macht: define('PROJEKTPFAD', __DIR__); Bei Includes, die nicht im selben Verzeichnis liegen, ist Vorsicht geboten, den dann enthält __DIR__ den Pfad des Includes.

2012-10-22T10:18:16+02:00Oktober 22nd, 2012|PHP|Kommentare deaktiviert für Pfadkonstante in PHP 5
Nach oben