㈠ php中define和defined的區別及用法
用法:
define("GREETING","Hello world!");
echo defined("GREETING")。
區別:
一、指代不同
1、define:函數定義一個常量。
2、defined:函數檢查某常量是否存在。
二、功能不同
1、define:在設定以後,常量的值無法更改,常量名不需要開頭的美元符號 ($)。
2、defined:若常量存在,則返回 true,否則返回 false。
三、用處不同
1、define:defined(name),必需。規定要檢查的常量的名稱。
2、defined:define(name,value,case_insensitive)可選。規定常量的名稱是否對大小寫敏感。
若設置為 true,則對大小寫不敏感。默認是 false(大小寫敏感)。
㈡ PHP如何添加預定義常量或變數
常量使用define語句定義即可
全局變數可以定義到全局變數數組$GLOBALS中
參考手冊 : http://php.net/manual/zh/rese...
看題主的問法,感覺"環境變數"可能符合題主要求
nginx配置PHP server的時候可以增加以下指令
fastcgi_param CUSTOM_ENV_VAR "my_env_value";
之後只要是通過nginx訪問的PHP請求,在任何代碼中中使用 $_SERVER['CUSTOM_ENV_VAR'] 就能取到你需要的值
又或者在fastcgi的配置文件中增加一行:
env[CUSTOM_ENV_VAR]="my_env_value"
之後只要是php-fastcgi處理的PHP文件,都可以通過 getenv('CUSTOM_ENV_VAR'); 來獲取設置的值
如果題主確實打算不親自define而要得到類似E_ALL那樣的常量的話,就需要寫點C了
題主可以新建一個自己的擴展(或者直接隨便找個你會編譯的擴展也行),在PHP_MINIT_FUNCTION中使用以下宏來定義自己的常量
REGISTER_STRINGL_CONSTANT("MY_SITE_VERSION", "1.0", 3, CONST_PERSISTENT);
之後重新編譯PHP即可.
㈢ php如何是用define呢,讓他起到全局的常量的作用
php中的define定義的是常量,不會修改的變數,因此,它們也是全局變數,在函數中可以訪問,唯一的不同是,它是不能被修改的,只能訪問。
㈣ php如何是用define呢,讓他起到全局的常量的作用
<?php
define("CONSTANT", "Hello world.");
echo CONSTANT; // outputs "Hello world."
echo Constant; // outputs "Constant" and issues a notice.
define("GREETING", "Hello you.", true);
echo GREETING; // outputs "Hello you."
echo Greeting; // outputs "Hello you."
?>
注意大小寫。
這樣寫便可全局。
若要在函數中,用此法也行:
globel wc;
wc="god";
㈤ php define('ACC',true) 是什麼意思
意思是用define函數定義一個布爾型類型的常量,常量名是"ACC",其值設為真(true)。
define()
函數定義一個常量。常量類似變數,不同之處在於:1.在設定以後,常量的值無法更改;2.常量名不需要開頭的美元符號
($);3.作用域不影響對常量的訪問;4.常量值只能是字元串或數字。
語法:
define(name,
value,
case_insensitive)
參數:
name:必需。規定常量的名稱。
value:必需。規定常量的值。
case_insensitive:可選。規定常量的名稱是否對大小寫敏感。若設置為
true,則對大小寫不敏感。默認是
false(大小寫敏感)。
㈥ PHP中用define定義的常量是否全局有效
define 是全局常量,當然對全局有效
㈦ 關於PHP面向對象中定義常量const和define
?php
define('php',
'i
love
php');
//
在類外面通常這樣定義常量
if
(defined('php'))
{
echo
'php
is
defined!';
}
class
myclass
{
//
常量的值將始終保持不變。在定義和使用常量的時候不需要使用$符號
const
constant
=
'constant
value';
function
showconstant()
{
echo
self::constant
.
'
';
}
}
echo
myclass::constant
.
'
';
$classname
=
'myclass';
echo
$classname::constant
.
'
';
//
php
5.3.0
之後
$class
=
new
myclass();
$class-
showconstant();
echo
$class::constant.'
';
//
php
5.3.0
之後
print_r(get_defined_constants());
//
可以用get_defined_constants()獲取所有定義的常量
㈧ php define定義常量
常量 和變數 其實都是賦值的可變數 不同的是 常量只能在聲明的時候賦值,並不能在運行時改變
如果 是這樣
define('db_host', $ini) ;
define('db_host','23213') ;
db_host 的值 還是$ini 而不會是後面的賦值 所以 db_host的值 只會是$ini
$ini 賦值給 db_host 你直接修改$ini的內容 db_host肯定會改變的
㈨ php define常量 函數作用域問題
可以將所有的常量定義在一個配置文件當中,然後進行調用,按照你這種一個函數調用一次,再說了,函數也是調用的,你這種寫法很少的,做什麼事兒別太可以了。例如 define("HOST","localshot"); 定義一個常量,資料庫的主機名。
㈩ 在php中 define 和 const 都是定義常量,這兩種常量定義的區別
const本身就是一個語言結構,而define是一個函數。另外const在編譯時要比define快很多。
1、const用於類成員變數的定義,一經定義,不可修改。Define不可以用於類成員變數的定義,可用於全局常量。
2、Const可在類中使用,define不能
3、Const不能再條件語句中定義常量
以上