Php中的強制轉換詳解


 

 強制轉換中分為兩種,第一種就只臨時轉換,和永久轉換。在臨時轉換中呢,首先可以通過第一中方式來顯示,就是小括號的形式,臨時轉換成整型我們可以通過(int)都是這樣的形式,或者是(integer)臨時轉換成整型,再往下再來看,臨時轉成浮點類型可以通過(float)或者是(double)或者是(rea!)臨時轉換成浮點類型,第三個臨時轉換成布爾類型,可以通過(boolean)或者你可以試驗一下(bool)縮寫的形式,我們可以來嘗試寫上一個布爾類型,再往下呢還可以轉換成字符串型。字符串型可以通過(string )字符串類型,接着呢也可以轉換成空,可以通過(unset)的形式轉換為空,還可以轉換成數組,(array)的形式轉換成數組,還可以轉換成對象,但是記住不可以轉換成資源(object)轉換成一個對象,那首先呢我們先來試驗一下這種()小括號的形式。

  來臨時轉換一個變量的類型。那臨時轉換的是沒有真正轉變,這個變量的類型。可以在這寫一個$var=12;這是一個整型那接着我把它臨時轉換成浮點類型可以通過var_dump((float)$var,(double)$var,(real)$var);一起來打印多個,那看都是把這個()小括號類型放到變量以前,來實現我們的臨時轉換。

  那接着我們來運行一下,看一下結果。

  會看到三個float12,證明可以。

  代碼例

  <?php

  //臨時轉換

  $var=12;

  var_dump((float)$var,(double)$var,(real)$var);

  那再把它臨時轉換成字符串類型,再把它轉換成String類型、bool類型,包括boolean的全稱,var_dump((float)$var,(double)$var,(real)$var,(string)$var,(bool)$var,(boolean)$var);試驗一下看看可不可以。

  String12booltruebooltrue沒問題,沒問題都可以那再把它轉換成空,在var_dump((unset)$var,(array)$var,(object)$var);這是臨時轉換再來看一下。

  你看到一個null 一個數組array一個對象object都可以,那接着你看到這是轉換成其它類型還有一個整型的我們沒有實驗,再來試驗一下寫上一個$string='3king';那現在用它轉換成一個整型的話。

  var_dump((int)$string,(integer)$string);把它們臨時轉換成整型

  整形的3同樣的記住我們的規則,字符串轉換成整型的時候,是不是去合法部分啊。

  代碼例;

<?php

//臨時轉換

$var=12;

var_dump((float)$var,(double)$var,(real)$var,(string)$var,(bool)$var,(boolean)$var);

echo '<hr/>';

var_dump((unset)$var,(array)$var,(object)$var);

echo '<hr/>';

$string='3king';

var_dump((int)$string,(integer)$string);

echo '<hr/>';

  對那最后呢我們在來實驗一下,那幾種轉換成布爾類型的false,看看可不可以,寫上一個$string='';轉換成布爾類型的時候應該轉換成var_dump((bool)$string);

  這時候你看到的就是一個bool類型的false沒有問題,這是我們的臨時轉換通過這種小括號()的形式。

  代碼例

  <?php

//臨時轉換

$var=12;

var_dump((float)$var,(double)$var,(real)$var,(string)$var,(bool)$var,(boolean)$var);

echo '<hr/>';

var_dump((unset)$var,(array)$var,(object)$var);

echo '<hr/>';

$string='3king';

var_dump((int)$string,(integer)$string);

echo '<hr/>';

$string='';

var_dump((bool)$string);

echo '<hr/>';

 

原文鏈接:http://www.maiziedu.com/wiki/php/coercion/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM