日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

php round函数输出不对_PHP常量

發布時間:2024/9/19 php 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php round函数输出不对_PHP常量 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一 什么是常量

常量是一個簡單值的標識符,該值在腳本中不能改變。

一個常量由英文字母、下劃線、和數字組成,但數字不能作為首字母出現。 (常量名不需要加 $ 修飾符),常量在整個腳本中都可以直接使用。

使用常量時,不能在常量名前添加$ 符號,不然會將常量轉換成新的未定義變量使用,會導致報錯

PHP中(PHP 4及以后)我們可以使用函數define()來定義常量

define ( string $name , mixed $value [, bool $case_insensitive = false ] ) 注意:該函數有三個參數 name:必選參數,常量名稱,即標志符 value:必選參數,常量的值 case_insensitive :可選參數,如果設置為 TRUE,該常量則大小寫不敏感,默認是大小寫敏感的

下面我們來舉個栗子:

<?php define('NAME',"PHP是世界上最好的語言"); //定義一個名為PI的常量,區分大小寫 echo NAME; //輸出:PHP是世界上最好的語言 ?> 如果代碼寫成 define('NAME',"PHP是世界上最好的語言",true)則表示不區分大小寫

PHP 5.3.0之后,除了使用函數define()之外,我們還可以使用PHP關鍵字const來定義常量

<?php //以下代碼需在PHP 5.3.0及之后的版本中運行 const PI = 3.14159; //使用const關鍵字定義一個名為PI的常量 echo PI; //輸出:3.14159 ?> define()是函數const是語言結構所以在執行時const要快得多

雖然上述兩種方式均可以定義常量,但是它們之間有什么不同之處呢。下面我們來一一講解PHP中define()函數和const關鍵字定義常量的區別

一 版本差異

兩種定義常量的方式之間存在版本差異,函數define()在PHP4和PHP5中均可使用,關鍵字const只能在PHP 5.3.0及其后的版本中使用。

二 定義位置的區別

由于函數define()定義的常量是在執行define()函數時定義的,因此可以在函數內、循環內、if語句內等函數能夠被調用的任何地方使用define()函數定義常量

與define()不同的是,由于const關鍵字定義的常量是在編譯時定義的,因此const關鍵字定義常量必須處于最頂端的作用區域。這也就意味著不能在函數內、循環內以及if語句之內用const來定義常量。

<?php //使用const關鍵字定義常量必須處于最頂端的作用區域 //也就是可以在編譯時直接解析定義的地方const DEMO = 'DEMO';class Person{const MAN = '男';const WOMAN = '女';}interface USB{const VERSION_2 = '2.0';const VERSION_3 = '3.0';} ?>

三 對值的表達式支持的差異

雖然關鍵字const和define()定義的常量值都只能為null或標量數據(boolean,integer,float和string類型)以及resource類型(不推薦定義resource類型的常量,否則可能出現無法預知的結果)。不過,由于關鍵字const定義常量是在編譯時定義的,因此const關鍵字定義的常量值的表達式中不支持算術運算符、位運算符、比較運算符等多種運算符,而這些運算符在define()函數定義常量時都是可以直接使用的

<?php define('DEFINE_VAR1', 1 << 1); //const CONST_VAR1 = (1 << 1); //const不支持位運算符,PHP會報語法錯誤define('DEFINE_VAR2', 1 + 1); //const CONST_VAR2 = 1 + 1 ; //const不支持算術運算符,PHP會報語法錯誤define('DEFINE_VAR3', 1 == 1); //const CONST_VAR3 = 1 == 1 ; //const不支持比較運算符,PHP會報語法錯誤$value = 3; define('DEFINE_VAR4', $value); //const CONST_VAR4 = $value ; //const不支持變量形式的值,PHP會報語法錯誤define('DEFINE_VAR5', true || false); //const CONST_VAR5 = true || false ; //const不支持邏輯運算符,PHP會報語法錯誤define('DEFINE_VAR6', 'Hello'.' World!'); //const CONST_VAR6 = 'Hello'.' World!' ; //const不支持字符串運算符,PHP會報語法錯誤class User{} $user = new User();define('DEFINE_VAR7', $user instanceof User); //const CONST_VAR7 = $user instanceof User ; //const不支持類型運算符,PHP會報語法錯誤 ?>

四 對字符大小寫敏感的支持差異

函數define()可以接收第3個參數,如果該參數為true,則表示常量名的大小寫不敏感。而使用const關鍵字定義常量卻沒有提供類似的功能,默認大小寫敏感

<?php // 設置編碼為UTF-8,以避免中文亂碼 header('Content-Type:text/html;charset=utf-8');// define()的第3個參數為true時,表示大小寫不敏感 define('SITE_NAME', 'PHP是世界上最好的語言', true); echo SITE_NAME; // 輸出:PHP是世界上最好的語言 echo site_name; // 輸出:PHP是世界上最好的語言 echo SiTe_NamE; // 輸出:PHP是世界上最好的語言 const DOMAIN_NAME = 'PHP是世界上最好的語言'; echo DOMAIN_NAME; // 輸出:PHP是世界上最好的語言 echo domain_name; // PHP提示常量未定義 echo DomaIN_nAMe; // PHP提示常量未定義 ?>

下一期:PHP字符串

總結

以上是生活随笔為你收集整理的php round函数输出不对_PHP常量的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。