PHP基礎

<?php
/*
    常量
*/
echo "<br/>"."/*常量*/"."<br/>";
define("MESSAGE","once");//大小寫敏感
echo MESSAGE."<br/>";
//echo Message."<br/>";
define("COUNT","multi",true);//大小寫不敏感
echo COUNT."<br/>";
echo Count."<br/>";
echo constant("count")."<br/>";//constant獲取常量值
echo defined("MESSAGE");//defined判斷是否已經被賦值

echo "當前文件路徑:".__FILE__."<br/>";
echo "行數:".__LINE__."<br/>";
echo "PHP版本信息:".PHP_VERSION."<br/>";
echo "OS:".PHP_OS."<br/>";

/*
    變量
*/
echo "<br/>"."/*變量*/"."<br/>";
$a = 10;//直接賦值
$b = $a;//傳遞賦值
$c = &$b;//引用賦值
echo '$a='.$a."<br/>";
echo '$b='.$b."<br/>";
echo '$c='.$c."<br/>";
$c = 20;
echo '$a='.$a."<br/>";
echo '$b='.$b."<br/>";
echo '$c='.$c."<br/>";
/////////作用域
//局部變量
echo "<br/>"."/*局部變量*/"."<br/>";
function example() {
    $a ="hello php!";
    echo '內部'.$a."<br/>";
}
example();
echo '外部'.$a."<br/>";
//全局變量
echo "<br/>"."/*全局變量*/"."<br/>";
function globala() {
    $a = 100;
    global $a;//用global申明,可使用在函數外部定義的變量
    echo 'echoa $a='.$a."<br/>";
}
globala();
//靜態變量
echo "<br/>"."/*靜態變量*/"."<br/>";
function statica() {
static $statica=10;
$statica++;
echo 'static $a='.$statica."<br/>";
}
statica();
statica();
/////////可變變量
echo "<br/>"."/*可變變量*/"."<br/>";
$d = "bla";
$$d="blabla";//可變變量
echo '變量$d='.$d."<br/>";
echo '可變變量$$d='.$$d."<br/>";
echo '變量$bla='.$bla."<br/>";//輸出變量bla

/*
    PHP數據類型
*/
echo "<br/>"."/*PHP數據類型*/"."<br/>";
////////標量數據類型boolean\string\integer\float
$boola = TRUE;
$boolb = FALSE;
echo 'boolean TRUE='.$boola.' FLASE='.$boolb.' end'."<br/>";
echo 'PHP字符串 回車\r'."\r".'回車換行 \n'."\n".'橫向跳到下一製表符位置 \t'."\t";//空格&nbsp
echo <<<EOF
    <p>界定符輸出 結束注意頂格及後方不可帶其餘文字</p>
EOF;
$str1 = 1234;//十進制
$str2 = 01234;//八進制
$str3 = 0x1234;//十六進制
echo '十進制:'.$str1.' 八進制:'.$str2.' 十六進制:'.$str3."<br/>";
$float1 = 1.036;
$float2 = 2.035;
$float3 = 3.58E1;//即爲3.58*10^1
echo '$float1='.$float1.' $float2='.$float2.' $float3='.$float3."<br/>";
////////複合數據類型array(數組)/object(對象)
$array[0]="array0";
$array[1]="array1";
$array[2]="array2";
$array2=array(0=>'b0',1=>'b1',2=>'b2','three'=>'b3');
echo '$array:'.$array[2]."<br/>";
echo '$array2:'.$array2['three']."<br/>";
////////特殊數據類型resource(資源)/null(空值)
$strnull1;//沒有賦值爲null
$strnull2 = null;
$strnull3 = 3;
unset($strnull3);//使用unset()處理後,$strnull3爲空
////////轉換數據類型
echo "<br/>";
$_2b = (boolean)2;
//$_2b = (bool)2;
echo '$_2b='.$_2b."<br/>";
$_2str = (string)2;
echo '$_2str='.$_2str."<br/>";
$_2int = (int)1.6;
//$_2int = (integer)1.3;
echo '$_2int='.$_2int."<br/>";
$_2flo = (float)2;
//$_2flo = (double)2;
//$_2flo = (real)2;
echo '$_2flo='.$_2flo."<br/>";
$_2arr = (array)2;
echo '$_2arr='.$_2arr[0]."<br/>";
$_2obj = (object)2;
//詳情p33
////////檢測數據類型
echo "<br/>";
echo 'is_bool?'.is_bool($a).'end'."<br/>";
echo 'is_string?'.is_string($a).'end'."<br/>";
echo 'is_float?或is_double?'.is_float($a).'end'."<br/>";
echo 'is_integer?或is_int?'.is_integer($a).'end'."<br/>";
echo 'is_null?'.is_null($a).'end'."<br/>";
echo 'is_array?'.is_array($a).'end'."<br/>";
echo 'is_object?'.is_object($a).'end'."<br/>";
echo 'is_numeric?'.is_numeric($a).'end'."<br/>";//是否爲數字或由數字組成的字符串

/*
    PHP運算符
*/
echo "<br/>"."/*PHP運算符*/"."<br/>";
/////////算術運算符
$calca = 5;
$calcb = 9;
echo 'a+b ='.($calca+$calcb)."<br/>";//優先級問題 不加()顯示$calcb
echo 'a-b ='.($calca-$calcb)."<br/>";//優先級問題 不加()顯示-$calcb
echo 'a*b ='.$calca*$calcb."<br/>";
echo 'a/b ='.$calca/$calcb."<br/>";
echo 'a%b ='.$calca%$calcb."<br/>";
////////字符串運算符
echo $a.$b."<br/>";
////////賦值運算符
echo '$a *= $b =>'.($a *= $b)."<br/>";
////////位運算符&與 |或 ^異或 ~按位取反 <<左移 >>右移
//具體指將二進制位從低位到高位對齊後運算
$m = 8;//二進制爲1000
$n = 12;//二進制爲1100
echo '$m&$n => '.($m&$n)."<br/>";//按位與1000轉爲十進制(8)
echo '$m|$n => '.($m|$n)."<br/>";
echo '$m^$n => '.($m^$n)."<br/>";
echo '~$m => '.(~$m)."<br/>";
echo '$m<<1 => '.($m<<1)."<br/>";//左移1位 10000(16)
echo '$m>>1 => '.($m>>1)."<br/>";//右移1位 100(4)
////////遞增和遞減運算符++ --
////////邏輯運算符&&或and   ||或or  xor(異或)  !(非)
////////計較運算符< > <= >= ==(相等) != ===(恆等 相等且數據類型相同) !==(非恆等 不相等且數據類型不同) 
////////三元運算符
echo (is_string($a))?$a:"not string!";
////////元算服優先級

?>

結果:

這裏寫圖片描述
這裏寫圖片描述

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