PHP-Variablen- und Datumsverarbeitungsfälle

墨辰丷
Freigeben: 2023-03-30 14:36:02
Original
3228 Leute haben es durchsucht

In diesem Artikel werden hauptsächlich PHP-Variablen und Datumsverarbeitungsfälle vorgestellt. Ich hoffe, dass er für alle hilfreich ist.

Variablenbezogen
Interne Implementierung von PHP-Variablen
Die Systemtypen von Programmiersprachen sind in starke Typen und schwache Typen unterteilt:

  1. Starke Typsprache bedeutet, dass, sobald eine Variable als Variable eines bestimmten Typs deklariert wird, ihr während der Ausführung des Programms kein anderer Wert als der Typ der Variablen zugewiesen werden kann. Sprachen wie c/c++/. Java fällt in diese Kategorie

  2. Skriptsprachen wie PHP, Ruby und Javascript sind schwach typisierte Sprachen: Eine Variable kann jeden Datentyp darstellen


PHP-Variablentypen und SpeicherstrukturenPHP muss seinen Datentyp beim Deklarieren oder Verwenden von Variablen nicht explizit angeben

PHP ist eine schwach typisierte Sprache. Das bedeutet nicht dass PHP keine Typen hat. In PHP gibt es 8 Variablentypen, die in drei Kategorien unterteilt werden können:

  1. Skalartyp: Boolean, Integer, Float, String

  2. Zusammengesetzter Typ: Array, Objekt

  3. Spezieller Typ: Ressource, NULL


Variable SpeicherstrukturDer Wert der Variablen wird in der gezeigten zval-Struktur gespeichert. Ihre Struktur ist wie folgt:

  typedef struct _zval_struct zval; 
   
  struct _zval_struct { 
    zvalue_value value; // 存储变量的值 
    zend_uint refcount__gc; // 表示引用计数 
    zend_uchar type;  // 变量具体的类型 
    zend_uchar is_ref_gc;  // 表示是否为引用 
  };
Nach dem Login kopieren


Der Wert der Variablen wird in einer anderen Struktur zvalue_value

< gespeichert 🎜>

Variablentypzval-Struktur Das Typfeld ist das kritischste Feld zur Implementierung schwacher Typen. Der Wert des Typs kann einer der folgenden sein: IS_NULL, IS_BOOL, IS_LONG, IS_DOUBLE, IS_STRING, IS_ARRAY, IS_OBJECT, IS_RESOURCE. Es ist im wahrsten Sinne des Wortes leicht zu verstehen, dass es sich nur um die einzigen Typen handelt, die je nach Typ unterschiedliche Werte im Wertfeld speichern

Speicherung variabler WerteWie bereits erwähnt , der Wert der Variablen wird in der zvalue_value-Struktur gespeichert. Die Struktur ist wie folgt definiert:

  typedef union _zvalue_value { 
    long lval; 
    double dval; 
    struct { 
      char *val; 
      int len; 
    } str; 
    HashTable *ht; 
    zend_object_value obj; 
  } _zvalue_value;
Nach dem Login kopieren


Datumsbezogen

Berechnen Sie die Anzahl der Tage dazwischen zwei Termine


 <?php 
   
  /** 
   * 求两个日期之间相差的天数(针对1970年1月1日之后,求之前可以采用泰勒公式) 
   * @param string $day1 
   * @param string $day2 
   * @return number 
   */ 
  function diffBetweenTwoDays ($day1, $day2) 
  { 
    $second1 = strtotime($day1); 
    $second2 = strtotime($day2); 
     
    if ($second1 < $second2) { 
      $tmp = $second2; 
      $second2 = $second1; 
      $second1 = $tmp; 
    } 
     
    return ($second1 - $second2) / 86400; 
  } 
   
  $day1 = "2013-07-27"; 
  $day2 = "2013-08-04"; 
   
  $diff = diffBetweenTwoDays($day1, $day2); 
  echo $diff."\n";
Nach dem Login kopieren

Zusammenfassung: Das ist es. Der gesamte Inhalt dieses Artikels soll für das Studium aller hilfreich sein.

Verwandte Empfehlungen:

Detaillierte Erläuterung der DS-Erweiterung der Datenstruktur in PHP

PHP-Implementierung zum Extrahieren Zeichenfolgen Methode für reguläre Ausdrücke für Mobiltelefonnummern

PHP-Implementierung zum Generieren und Parsen von XML basierend auf SimpleXML

Das obige ist der detaillierte Inhalt vonPHP-Variablen- und Datumsverarbeitungsfälle. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage