PHP8: switch oder match?

Zu den neuen Sprachelementen der am heutigen 26. November 2020 erschienenen nächsten Hauptversion PHP8 der immer noch meistverwendeten Programmiersprache im Internet gehört das Konstrukt „match“, das in vielen Fällen ein besserer Ersatz für das altbekannte „switch“ ist. Hier zeigen wir die Vorteile der neuen Fallverzweigung von PHP8 an einem typischen Beispiel (Text zum Statuscode). Zunächst die Statusausgabe mit dem bisherigen switch: switch ($statusCode) { case 200: case 300: $ausgabe = null; break; case 400: $ausgabe = 'nicht gefunden'; break; case 500: $ausgabe = 'Serverfehler'; break; default: $ausgabe = ‘unbekannt'; break; } Und hier das Gleiche mit dem neuen match: $ausgabe = match ($statusCode) { 200, 300 => null, 400 => 'nicht gefunden', 500 => ‘Serverfehler', default => 'unbekannt', }; Man sieht auf den ersten Blick, das match aus dem Fünfzehnzeiler mit switch einen Sechszeiler macht. In den meisten anwendbaren Fällen ist match signifikant kürzer als switch. Match kann aber auch mehrere Zweige der Fallverzweigung mit einem Komma getrennt zusammenfassen und braucht auch kein break –Statement nach jedem Zweig und kein Semikolon am Ende. Außerdem gibt match auch einen Wert zurück, so dass man diesen Wert nur einmal und nicht erneut in jedem Zweig zuordnen muss.

2020-11-27T00:05:17+02:00November 26th, 2020|Coding, PHP|Kommentare deaktiviert für PHP8: switch oder match?

Die Common Table Expressions in MySQL 8.0

Vor zwei Monaten erschien die Version 8.0 der relationalen Datenbank MySQL von Oracle. Zu den fehlenden Eigenschaften, die das Konkurrenzprodukt PostgreSQL schon seit der Version 8.4 aus dem Jahr 2009 beherrscht, gehören die Common Table Expressions (CTEs). Diese Konstrukte in der Datenbank-Abfragesprache SQL gestatten es, komplexe Querys in überschaubare Chunks aufzuteilen, die danach ähnlich den bekannten Views über ihren Namen benutzt werden können, und das anders als bei einfachen Subquerys auch mehrfach. Beispiel für die Nutzung von CTEs In dem kurzen SQL-Listing im Artikelbild sehen Sie, dass die CTEs vor der Haupt-Query zunächst mit WITH definiert werden müssen. In meinem Beispiel werden in der ersten CTE die Online-Verkäufe aus einer imaginären Sales-Tabelle ausgewählt und dann in der zweiten CTE nach Monaten aggregiert. Die Hauptabfrage berechnet den Anteil eines einzelnen Online-Verkaufs am Monatsumsatz. Common Table Expressions reduzieren dabei nicht nur Redundanzen, sondern verringern auch die Fehleranfälligkeit. Wettbewerber MariaDB hat die CTEs schon seit der Version 10.1 implementiert - seit Version 10.2 vom Mai 2017 kann MariaDB das sogar auch rekursiv…

2018-06-29T08:39:05+02:00Juni 29th, 2018|Coding, MySQL, Webwerkzeuge|Kommentare deaktiviert für Die Common Table Expressions in MySQL 8.0

Ohne Programmierkenntnisse PowerApps erstellen

Im Rahmen seiner Convergence EMEA Conference hat Microsoft geradeseinen neuen Cloud-Service PowerApps vorgestellt. Mit PowerApps  erhalten Unternehmen ein Werkzeug zur Erstellung einfacher mobiler Apps und Web-basierter Geschäftsanwendungen, die auf allen Smartphones und Tablets laufen. Zur Nutzung des Cloud-Service sollen keine Programmierkenntnisse nötig sein. PowerApps kombiniert ein Cloud-Backend mit einfach zu bedienenden Werkzeugen, mit denen man die gewünschten Apps mittels vorkonfigurierter Templates mit Drag-and-drop zusammenstellen kann. Auf der Internetseite von PowerApps hält Microsoft ein (Video-)Tutorial zum Abruf bereit, das ein einfaches Beispiel zur Erstellung einer App auf Basis von bei Dropbox gespeicherten Daten zeigt. Da die PowerApps Browser-basiert sind, kann man sie auf nahezu allen wichtigen Mobilplattformen von iOS über Android bis Windows 10 nutzen.

2015-12-01T23:06:01+02:00Dezember 1st, 2015|Allgemein, Webwerkzeuge|Kommentare deaktiviert für Ohne Programmierkenntnisse PowerApps erstellen

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

WebIDE von Mozilla in Firefox-Browser integriert

Für die Entwicklung von Webanwendungen braucht man nicht unbedingt verschiedene Werkzeuge und Vorlagen, die man extra irgendwo herunterladen muss? Dafür reicht schließlich auch der Browser, meint Mozilla. Das Unternehmen teilt mit, eine integrierte Entwicklungsumgebung (IDE) sei jetzt Bestandteil der Nightly-Builds von Firefox. Sie nennt sich einfach nur WebIDE. Damit die Entwickler bei der Benutzung der WebIDE nicht ganz von vorn anfangen müssen, ist eine Beispiel-App als Vorlage enthalten, die im Grunde nur einen kleinen Button zeigt. Mit den Werkzeugen der DIE kann man dann die eigentliche Entwicklung vornehmen. Die WebIDE erlaubt neben dem Schreiben auch das Testen direkt im Browser. Die Anwendung kann man aber auch einfach auf Firefox OS Geräten oder Simulatoren installieren. Mit den bekannten Entwicklerwerkzeugen im Firefox-Browser kann das erstellte Programm dann wie gehabt debuggen.

2014-06-25T17:53:33+02:00Juni 25th, 2014|Allgemein, Bildbearbeitung, CSS, HTML, Javascript, test|Kommentare deaktiviert für WebIDE von Mozilla in Firefox-Browser integriert

HTML5-Tag output

Mit dem neuen HTML5-Tag <output> lassen sich nur dynamisch zum Beispiel mit Jacascript erzeugte Werte ausgeben. Ein typisches Fallbeispiel ist die Summe der Artikel in einem Warenkorb. Es besitzt ein value-Attribut, das durch DOM mit Javascript festlegen kann, was auf dem Bildschirm als Output erscheint. Das ist für den Programmierer durchaus bequemer und einfacher beim Erstellen von Internetseiten als die bisherigen Möglichkeiten. Hier ein Codebeispiel für eine Berechnung und die Ausgabe des Ergebnisses per Output-Tag: <form onsubmit="return false" oninput="o.value = parseInt(a.value) + parseInt(b.value)">   <input name="a" type="number" step="any"> +   <input name="b" type="number" step="any"> =   <output name="o"></output> </form> In diesem Codebeispiel wird auch das neue HTML5-Attribut "number" des Input-Tags benutzt…

2012-07-17T08:01:21+02:00Juli 17th, 2012|HTML|Kommentare deaktiviert für HTML5-Tag output
Nach oben