PHP學習(二)

2019.3.15 Blazar 實驗樓


* 實驗環境

PHP 7.2

Ubuntu 14.04

* 數據類型

PHP 的四種標量數據類型,分別是boolean(布爾型)、integer(整型)、float(浮點型,也稱作 double)、string(字符串)。然後介紹了字符串的 4 中定義方式,單引號,雙引號,Heredoc 和 Nowdoc。


  • PHP 支持 8 種原始數據類型。

    四種標量類型:

    • boolean(布爾型)
    • integer(整型)
    • float(浮點型,也稱作 double)
    • string(字符串)

    兩種複合類型:

    • array(數組)
    • object(對象)

    最後是兩種特殊類型:

    • resource(資源)
    • NULL(無類型)

  • 類型檢測

    • var_dump()函數可以查看表達式的值和類型
    • gettype()函數用於檢測變量類型
    • is_ 加類型,如is_int() , is_array() 等,判斷變量量是否爲該類型
<?php
$a = TRUE;
$b  = "foo";
$c = 0.1;
$d = 12;

if (is_string($b)) {
    echo "$b 是字符串".PHP_EOL;
} 

if (is_int($c)) {
    echo "$c 是整型".PHP_EOL;
}

var_dump($a);
var_dump($b);
echo gettype($c).PHP_EOL;
echo gettype($d);

執行

$ php test.php

在這裏插入圖片描述


  • Boolean 布爾類型

    布爾類型表達了真值,可以爲 TRUE 或 FALSE,不區分大小寫。

    <?php
    
    $a = True;
    $b = False;
    
    var_dump($a);// bool(true)
    var_dump($b);// bool(false)
    

    在這裏插入圖片描述

    運算符返回 boolean 類型的結果:

  <?php
  
  // == 是一個操作符,它檢測兩個變量值是否相等,並返回一個布爾值
  if ($a == "say_hello") {
      echo "Hello World";
  }
  // $b 的值是否爲 true:
  if ($res) {
      echo "This is true";
  }
  • ** 注意**當下列情況轉換爲 Boolean 時,其值爲 FALSE
    • 布爾值 FALSE 本身
    • 整型值 0(零)
    • 浮點型值 0.0(零)
    • 空字符串,以及字符串 “0”
    • 不包括任何元素的數組
    • 特殊類型 NULL(包括尚未賦值的變量)
    • 從空標記生成的 SimpleXML 對象

在這裏插入圖片描述

  • Integer 整型

    • 整型值可以使用十進制,十六進制,八進制或二進制表示,前面可以加上可選的符號(- 或者 +)。整數溢出
    • 如果給定的一個數超出了 integer 的範圍,將會被解釋爲 float。同樣如果執行的運算結果超出了 integer 範圍,也會返回 float。
<?php

$a = 123445566;
$b = 9223372036854775807;
$c = 9223372036854775808;
$d = 50000000000000 * 1000000;

var_dump($a);
var_dump($b);
var_dump($c);
var_dump($d);

​ 執行 php test.php

​ ( 更改了部分數字)

​        ![](C:\Users\dell\Desktop\php.PNG)


  • Float 浮點型

    • 浮點型(也叫浮點數 float,雙精度數 double 或實數 real)
    • 浮點數的字長和平臺相關,通常最大值是 1.8e308 並具有 14 位十進制數字的精度(64 位 IEEE 格式)

  • String 字符串類型

    一個字符串 string 就是由一系列的字符組成,其中每個字符等同於一個字節,PHP 中有 4 中表達方式:

    1 . 單引號

    ​ 單引號內特殊字符變量不會被解析(類似於字符串直接打印

    <?php
    $a = 'Hello';
    echo '$a \n World';//$a \n World
    

    在這裏插入圖片描述

    2 . 雙引號

    ​ 雙引號內的特殊字符和變量會被解析。

  ```php
  <?php
  $a = 'Hello';
  /**
   * Hello
   * php World
   */
  echo "$a \nphpWorld";

在這裏插入圖片描述

3 . Heredoc

​ Heredoc 類似與雙引號,內部轉義字符和變量可以被解析,句法結構爲

  <<<EOT
  
  字符串
  
  EOT;

​ 其中 EOT 爲標識符,可以自定義,但是首尾標識符必須相同。 開始標識符 EOT 後需換行,結束標識符 EOT 必須獨佔一行,且前面不許有空格。

  <?php
  $a ='Hello' ;
  echo <<<EOT
  $a Hello
  EOT;

在這裏插入圖片描述

4 . Nowdoc

​ Nowdoc 類似於單引號,無法解析轉移字符和變量。句法結構類似 Heredoc,但是需要在開始標識符加上單引號。

  <?php
  $a ='Hello' ;
  echo <<<'EOD'//和 Heredoc 不同點
  $a Hello
  EOD;

編輯 test.php

  <?php
  
  $a = 'Hello';
  $b = '$a World';
  $c = "ShiYanLou";
  
  $c = <<<EOT
  $a \n World
  EOT;
  
  $d = <<<'EOT'
  $a \n $c
  EOT;
  
  var_dump($b);
  var_dump($c);
  var_dump($d);

執行 php test.php

在這裏插入圖片描述


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章