黎伽軒-PHP運算符和表達式(三)

常量

常量特點

常量值被定義後,在腳本的其他任何地方都不能被改變。
使用常量時,不能在常量名前添加$ 符號,不然會將常量轉換成新的未定義變量使用

define()

使用define()函數聲明常量

define(string constant_name,mixed value,case_sensitive);
define("name","week eight");

constant()

使用constant()函數獲取常量的值

mixed constant(string const_name);
echo constant("name");    //week eight

defined()

使用defined()函數判斷常量是否已經被定義

bool defined(string constant_name);
echo defined("name");     //1

預定義常量

___ FILE ___

# 默認常量,PHP程序文件名
echo __FILE__;    //輸出此文件的絕對位置

PHP_VERSION

# 內建常量,PHP程序的版本,如“3.0.8_dev”
echo PHP_VERSION;    //輸出使用的php版本

PHP_OS

# 內建常量,執行PHP解析器的操作系統名稱,如“Windows”
echo PHP_OS;        //輸出使用的操作系統

變量

變量的命令規則

1.名稱用$和標識符表示;
2.變量名是區分大小寫;
3.開頭不能是數字,可以是字母和下劃線;
4.不能使用PHP的運算符號;
5.可以使用系統關鍵字作爲變量名;

變量的賦值方式

直接賦值

<?php
    $name="week eight";
    $number=1;
    echo $name;
    echo $number;
?>

傳值賦值

<?php
    $str1="PHP編程字典";
    $str2=$str1;
    $str1="我喜歡學習PHP";
    echo $str2;
?>

引用賦值

<?php
    $str = "學習PHP很輕鬆";
    $str2 = & $str;
    $str = "我要大聲的告訴你:$str";
    echo $str2;	
    echo "<p>";	
    echo $str;
?>

可變變量

<?php
    $change_name = "php";
    $php = "編程的關鍵因素在於學好語言基礎!";
    echo $change_name ;
    echo $$change_name ;
?>

PHP運算符

  • 算術運算符
  • 字符串運算符
  • 賦值運算符
  • 位運算符
  • 遞增或遞減運算符
  • 邏輯運算符
  • 比較運算符
  • 條件運算符
  • 運算符優先級

表達式

將運算符和操作數連接起來的式子稱爲表達式

<?php
    $A = "PHP";
    $B+=1;
    $C = $D = 8;
?>

數據類型的轉換

自動轉換

自動轉換即爲定義常量或變量時,不需要指定常量或變量的數據類型,PHP在執行時會自動轉換爲合適的數據類型

  • 布爾型數據和數值型數據在進行算術運算時,TRUE被轉換爲整數1,FALSE被轉換爲整數0。
  • 字符串型數據和數值型數據在進行算術運算時,如果字符串以數字開頭,將被轉換爲相應的數字;如果字符串不是以數字開頭,將被轉換爲整數0。
  • 在進行字符串連接運算時,整數、浮點數將被轉換爲字符串型數據,布爾值TRUE將被轉換爲字符串"1",布爾值FALSE和NULL將被轉換爲空字符串""。
  • 在進行邏輯運算時,整數0、浮點數0.0、空字符串""、字符串"0"、NULL以及空數組將被轉換爲布爾值FALSE,其他數據將被轉換爲布爾值TRUE。

強制轉換

括號括起來的類型名稱進行轉換
格式:(數據類型)變量或常量

<?php
    $num = "100abc";
    echo (int)$num;      //100
?>

使用以val結尾的函數名的函數
格式:數據類型val(變量或常量)

<?php
    echo intval("159asd");     //159
    echo floatval("3.334a")    //3.334
    echo strval("15.65week")   //15.65week
?>

使用settype()函數
格式:settype(變量或常量,“數據類型”)

<?php
    $str = "66.8abc";
    settype($str,"int");   
    var_dump($str);       //int(66)
?>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章