ホームページ  >  記事  >  バックエンド開発  >  PHP 変数と日付処理のケース

PHP 変数と日付処理のケース

墨辰丷
墨辰丷オリジナル
2018-06-07 16:35:203217ブラウズ

この記事では主にPHPの変数と日付処理の事例を紹介しますので、興味のある方は参考にしていただければ幸いです。

変数関連
PHP変数の内部実装
プログラミング言語のシステムタイプは、強い型と弱い型の2種類に分けられます:

  1. ## 強い型言語とは、変数が特定の型の変数として宣言されると、プログラムの実行中にその変数の型以外の値を割り当てることができないことを意味します。C 言語などの言語です。 /c/java はこのカテゴリに分類されます

  2. php、ruby、javascript などのスクリプト言語は弱く型付けされた言語です。変数は任意のデータ型を表すことができます


php 変数の型と記憶構造php が変数を宣言または使用するとき、そのデータ型を明示的に示す必要はありません

php は弱い型指定言語ですこれは、php に型がないという意味ではありません。php には 8 つの変数型があり、次の 3 つのカテゴリに分類できます: ブール型、整数型、浮動小数点型、文字列型

  1. # 複合タイプ: array ,object

  2. ## 特殊タイプ: resource,NULL
  3. 変数格納構造

    変数の値は、示されている zval 構造体に格納されます。その構造は次のとおりです。
  4.   typedef struct _zval_struct zval; 
       
      struct _zval_struct { 
        zvalue_value value; // 存储变量的值 
        zend_uint refcount__gc; // 表示引用计数 
        zend_uchar type;  // 变量具体的类型 
        zend_uchar is_ref_gc;  // 表示是否为引用 
      };

変数の値は、別の構造体 zvalue_value に格納されます。
変数 type

zval 構造体 type フィールドは、弱い型を実装するための最も重要なフィールドです。 type の値は、IS_NULL、IS_BOOL、IS_LONG、IS_DOUBLE、IS_STRING、IS_ARRAY、 IS_OBJECT、IS_RESOURCE。文字通り理解するのは簡単ですが、これらはマークの唯一のタイプであり、タイプに応じて値フィールドに異なる値を格納します


変数値の格納

#前述したように、変数の値は zvalue_value 構造体に格納され、その構造体は次のように定義されます。

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

#日付関連

##数値を計算する2 つの日付の間の日数

 <?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";


要約:以上です この記事の内容全体が、皆さんの研究に役立つことを願っています。

関連する推奨事項:

PHP におけるデータ構造の DS 拡張の詳細な説明

抽出の PHP 実装文字列 携帯電話番号 正規表現方式

SimpleXMLに基づいたXML生成・解析のPHP実装方法

以上がPHP 変数と日付処理のケースの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。