Normales Thema Einigen Code zu PHP (Gelesen: 71 mal)
Jopii
Forum Administrator
*****
Offline


I love YaBB 2.6.12!

Beiträge: 167
Standort: Land Of Confusion
Mitglied seit: 01.04.2024
Geschlecht: männlich
Einigen Code zu PHP
29.01.2026 um 22:05:57
Beitrag drucken  
PHP - Suchen eines Key in einem Array

Manchmal ist es notwendig die Position eines Wertes in einem Array zu wissen. Dafür gibt es einen php-Befehl: array_search.
Hier mal ein kleines Beispiel:
 
Code (PHP)
Alles auswählen
$MeinArray = array("W0","W1","W2","W3");  $MeinKey = array_search("W2", $MeinArray);  echo "Mein Key = ".$MeinKey;  


 
Das Ergebnis dieser Abfrage ist dann:

Zitat:

Mein Key = 2


PHP - Der erste Key eines Array soll höher als Null sein.

Es kommt auch schon einmal vor, das Array mit einem anderen key anfangen soll. Ein normales Array fängt immer mit einem Key von 0 an. Was wäre aber jetzt, wenn edas programm verlangt, das der Key mit 100 anfangen soll? Hier gibt es auch eine einfache Lösung.

Hier mal ein kleines Beispiel:

Code (PHP)
Alles auswählen
$MeinArray = array("W0","W1","W2","W3");
$MeinNeyesArray = array(100 => "W100","W101","W102","W103"); 
echo "Mein 102 = ".$MeinNeyesArray[102];  


 
Das Ergebnis dieser Abfrage ist dann:

Zitat:

Mein 102 = W102



PHP - Hier die Beispiele mit der date() - Funktion

Code (PHP)
Alles auswählen
date("d.m.Y"); 



Heutiges Datum mit jeweils führender Null und vierstellige Jahreszahl so sieht's: aus:

03.01.2023

Auch die Zeit kann man damit darstellen:

Code (PHP)
Alles auswählen
date("h:i:s \h"); 



Zu bedenken ist dabei, daß es sich um die Zeit des Servers handet. Und so sieht's aus:

Zitat:

05:14:13 h



Man kann beides zusammentun, und erhält dann etwas wie:

Code (PHP)
Alles auswählen
date("l jS F Y h:i:s"); 




Hier das Ergebnis:

Zitat:

Tuesday 3rd January 2023 05:14:13



Jetzt noch ein letztes Beispiel, wie man auch andere Daten außer dem heutigen Datum darstellen kann, und sogar auch damit rechnen.

Code (PHP)
Alles auswählen
<?php
    $noon = mktime(12,0,0, date("m"), date("d"), date("Y"));
    $morgen = mktime(0,0,0, date("m"), date("d")+1, date("Y"));
    $letztermonat = mktime(0,0,0, date("m")-1, date("d"), date("Y"));
    $naechstesjahr = mktime(0,0,0, date("m"), date("d"), date("Y")+1);

    echo "Heute Mittag = ".date("d.m.Y h:i:s", $noon)."<br>";
    echo "Morgen = ".date("d.m.Y", $morgen)."<br>";
    echo "Letzer Monat = ".date("d.m.Y", $letztermonat)."<br>";
    echo "Nächstes Jahr = ".date("d.m.Y", $naechstesjahr)."<br>";
?> 



Und so sieht das ganze dann aus:

Zitat:

Heute Mittag = 03.01.2023 12:00:00
Morgen = 04.01.2023
Letzer Monat = 03.12.2022
Nächstes Jahr = 03.01.2024


PHP - Ein Datum aus der Datenbank richtig darstellen

Wenn man ein Datum in der Datenbank speichert wird es normalerweise in einer Art und Weise gespeicher, daß man es in deutsch nicht wirklich lesen kann. Aus diesem Grund gibt es einen netten php-Befehl, der das Datum in ein Array packt, und von dort wieder ausgelesen werden kann.

Code (PHP)
Alles auswählen
$datum = explode("-",tabellenspalte); 
echo $datum[2].".".$datum[1].".".$datum[0];  



Das Ganze würde aber auch Sinn machen, daß man es direkt in der SQL-Abfrage ändert. Das können Sie aber in der Rubrik Tipps und Tricks für MySQL nachlesen

PHP - Mit strpos einen String suchen

Sehr oft kommt es vor, daß man überprüfen muss ob ein String in einem anderen String vorhanden ist. Hierfür ist der php-Befehl strpos('meinstring','suchstring'); hilfreich.

Hier mal eine kleines Beispiel:

Code (PHP)
Alles auswählen
<?php
    $meinString = 'abc';
    $findMich  = 'a';
    $pos = strpos($meinString, $findMich);
    if ($pos !== false) {
        echo "Der String '$findMich' wurde im String
        '$meinString' gefunden";
        echo " und befindet sich an Position $pos";
    } else {
        echo "Der String '$findMich' wurde nicht im String
        '$meinString' gefunden";
    }
?> 



weitere Beispiele und Erklärungen finden Sie auf der Seite
https://php.net/manual/de/function.strpos.php

Ab und zu muss man aber nach dem letzten Vorkommen eines Zeichens suchen. Dafür gibt es auch einen Befehl, der da wäre: strrpos('meinstring','suchstring')

Beide Befehle kann man noch mit einem dritten Parameter versehen. Der besagt ab welchem Zeichen gesucht werden soll. Wenn dieser Wert negativ ist, dann würde er ab dem Zeichen vom Ende der Zeichenkette anfangen zu suchen.

Code (PHP)
Alles auswählen
$pos = strpos('abcdef abcdef', 'a', 1); // $pos = 7, nicht 0 



PHP - Anzahl der Tage eines Monats ermitteln

In letzter Zeit treffe ich immer öfter auf das Problem, wie ich herausfinden kann, wieviel Tage ein bestimmter Monat hat. Dazu gibt es natürlich auch einen Programmierweg. Dieser setzt sich aus den beiden php-Funktionen
mktime und date zusammen. Zuerst muß man das Datum von einem Text in einen Wert, den sogannten Timestamp, umwandeln. Dies sind die Sekunden seit dem 01.01.1970. Damit kann man dann wiederum ermittlen, wieviel Tage der Monat hat. Hier mal das script dazu:

Code (PHP)
Alles auswählen
echo date("t",mktime(0,0,0,2,1,2012)); 




Und das ergebins davon ist:

Zitat:

29


PHP - Grossen Zahl nach Tausendern mit Trennzeichen darstellen

Wenn man eine grosse Zahl wie z.B. 10000000 auf einer Webseite darstellen möchte, wird das Lesen dieser Zahl bei so vielen Nullen etwas schwierig. Hierfür gibt es eine php-Funktion die sich number_fomrat nennt. Sie Syntax ist recht simple.

Code (PHP)
Alles auswählen
echo number_format('10000000', 0, ',', '.');
echo number_format('10000000', 2, ',', '.');
echo number_format('10000000'); 



So würde das ganze dann fertig aussehen:

Zitat:

10.000.000
10.000.000,00
10,000,000



Die erste Zeile ist das Deutsche Zahlenformat. Die zweite Zeile wird mit der Zahl 2 dazu veranlasst noch 2 Stellen hinter dem komma anzuzeigen. Die Dritte Zeile ist das engliche Zahlen Format.
  

The Administrator - Cheffe von Ganzes
Zum Seitenanfang
IP gespeichert