>  기사  >  백엔드 개발  >  PHP 변수 및 날짜 처리 사례

PHP 변수 및 날짜 처리 사례

墨辰丷
墨辰丷원래의
2018-06-07 16:35:203233검색

이 글은 주로 PHP 변수와 날짜 처리 사례를 소개합니다. 관심 있는 친구들이 참고하면 좋겠습니다.

변수 관련
PHP 변수의 내부 구현
프로그래밍 언어의 시스템 유형은 강한 유형과 약한 유형의 두 가지 유형으로 나뉩니다.

  1. 강한 유형 언어는 일단 변수가 변수로 선언되면 프로그램 내에서 특정 타입을 변수의 타입 이외의 값으로 할당할 수 없습니다. c/c++/java 등의 언어는 php, ruby ​​등의 스크립트 언어에 속합니다. javascript는 약한 유형의 언어입니다. 변수는 모든 데이터 유형을 나타낼 수 있습니다.

  2. php 변수 유형 및 저장 구조
php는 변수를 선언하거나 사용할 때 데이터 유형을 명시적으로 표시할 필요가 없습니다.


php는 약한 유형의 언어입니다. , 이는 PHP가 유형을 지정하지 않는다는 의미는 아닙니다. PHP에는 8가지 변수 유형이 있으며 이는 세 가지 범주로 나눌 수 있습니다:

스칼라 유형: 부울, 정수, 부동 소수점, 문자열

  1. 복합 유형: 배열 , object

  2. 특수 유형: Resource , NULL

  3. 변수 저장 구조
변수의 값은 아래 표시된 zval 구조에 저장됩니다.

  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

변수 유형
zval 구조의 유형 필드는 약한 유형 지정을 구현하는 데 가장 중요한 필드입니다. 유형의 값은 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;

Date 관련

두 날짜 사이의 일수 계산

 <?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는 문자열에서 휴대폰 번호의 정규식을 추출하는 방법을 구현합니다.

PHP는 해당 방법을 구현합니다. SimpleXML을 기반으로 XML 생성 및 구문 분석

위 내용은 PHP 변수 및 날짜 처리 사례의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.