程式碼如下:
/*資料型別之間互相轉換
* 一種是強制轉換
* setType(變數,型別); //int,integer,float,double等等。
* 這個函數將原變數的型別改變,用var_dump();可以看變數
*
* 在賦值前使用(型)的形式,不會改變原變數的型別
* $a=(int)"123abc ";
*
* $變數=intval(變數或值);
* $變數=floatval(變數或值);
* $變數=stringval(變數或值);
*
* 注意:整數在記憶體中佔4個位元組2.147e9
* 浮點型在記憶體中佔8個位元組
*
*
* 一種是自動轉換(最常用方式),變數會更具運作環境自動轉換
* 與變數和類型有關的一些常用函數
* isset();//判斷一個變數是否存在,值如果是null也表示空。
* empty();//判斷一個變數是否為空"",null
* unset();//刪除一個變數
* setType();//設定一個變數類型
* getType();//取得一個變數型別var_dump();取得型別與值
*
* 變數型別測試函數
* is_bool();//判斷是否為布林類型
* is_int() is_integer() is_long()////////////////////////1是否為整數
* is_float(), is_double() is_real()//...
* is_array()
* is_object()
* is_resource()
* 是否為標量is_numberic()//判斷是否為任何一種數字,或數字字串
* is_callable()//判斷是否為有效的函數名稱
* 常數的聲明與使用
* 1.常數是一個簡單值的識別常數符
* 2.常數定義後不能再改變它的值,也不能使用unset()或其他的函數取消
* 3.常量可以不用理會變量範圍的規則而在任何地方都可以定義和訪問
* 4 .常數使用define("常數名",值);
* 5.常數名在聲明和使用時都不使用"$"
* 6.常數名稱習慣都使用大寫
* 7.常數的值只能用標量型(int,float,bool,string)
* 8.常數一定要在聲明時就給值
* 9.defined("常數");//判斷常數是否有
*
* 預定義量和魔術常數常數
* echo __FILE__;//輸出目前檔案名稱目錄_魔術常數
* echo CASE_LOWER;//輸出固定的值_預定義常數
*
*/
//這個函數將原始變數的類型改變,用原變數的類型改變, var_dump();可以查看變數
$str="100.12345abc";
setType($str,int);
var_dump($str);
//在賦值前使用(類型)的形式的形式100.12345abc";
$a=(int)$str;
var_dump($a);//輸出int(100)
var_dump($str);//輸出值不變,"100.12345abc"字符串不是以數字開頭,則轉換成0
//不同類型運算
$a=10;
$b="100abc";
$c=true;
$d=12.34;
$sum=$a+ $c;//布林型自動轉換成1,結果為11
$sum=$a+$b;//結果為110
$sum=$a+$b+$c;//結果為111
$sum=$ a+$b+$c+$d;//結果為123.34,因為浮點型記憶體空間大,小記憶體轉大記憶體。
//判斷是否為陣列
$a=array("one","two",1,3,6,8);
if(is_array($a)){
print_r($a);//印出陣列
}else{
echo $a;
}
//定義常數,使用常數
define("home","this is a home")
$a=1005>
global $a;//因為$a是全域變數所以要用全域標記呼叫
echo $a;
echo home;//常數可以不用理會範圍,直接存取或定義
}
demo();
/ /判斷常數是否存在
if(defined("home")
{
echo home;
}
else
{
define("home","this is a home");