php編譯參數詳解,php的代碼格式

本文目錄一覽:

php const用法詳解 以及php常量定義const和define的異同

常量是一個簡單值的標識符(名字)。如同其名稱所暗示的,在腳本執行期間該值不能改變(除了所謂的魔術常量,它們其實不是常量)。常量默認為大小寫敏感。通常常量標識符總是大寫的。

可以用 define() 函數來定義常量。在 PHP 5.3.0 以後,可以使用 const

關鍵字在類定義的外部定義常量,先前版本const

關鍵字只能在類(class)中使用。一個常量一旦被定義,就不能再改變或者取消定義。

常量只能包含標量數據(boolean,integer,float 和 string)。 可以定義 resource

常量,但應盡量避免,因為會造成不可預料的結果。

可以簡單的通過指定其名字來取得常量的值,與變量不同,不應該在常量前面加上 $

符號。如果常量名是動態的,也可以用函數constant() 來獲取常量的值。用

get_defined_constants()

可以獲得所有已定義的常量列表。

常量和變量有如下不同:

·常量前面沒有美元符號($);

·常量只能用 define() 函數定義,而不能通過賦值語句;

·常量可以不用理會變量的作用域而在任何地方定義和訪問;

·常量一旦定義就不能被重新定義或者取消定義;

·常量的值只能是標量。

Example #1 定義常量

?php

define(“CONSTANT”, “Hello world.”);

echo CONSTANT; // outputs “Hello world.”

echo Constant; // 輸出 “Constant” 並發出一個提示性信息

?

Example #2 使用關鍵字 const 定義常量

?php

// 以下代碼在 PHP 5.3.0 後可以正常工作

const CONSTANT = ‘Hello World’;

echo CONSTANT;

?

Example #3 合法與非法的常量名

?php

// 合法的常量名

define(“FOO”,

“something”);

define(“FOO2”,

“something else”);

define(“FOO_BAR”, “something more”);

// 非法的常量名

define(“2FOO”,

“something”);

//

下面的定義是合法的,但應該避免這樣做:(自定義常量不要以__開頭)

// 也許將來有一天PHP會定義一個__FOO__的魔術常量

// 這樣就會與你的代碼相衝突

define(“__FOO__”, “something”);

?

【問】在php中定義常量時,const與define的區別?

【答】使用const使得代碼簡單易讀,const本身就是一個語言結構,而define是一個函數。另外const在編譯時要比define快很多。

(1).const用於類成員變量的定義,一經定義,不可修改。define不可用於類成員變量的定義,可用於全局常量。

(2).const可在類中使用,define不能。

(3).const不能在條件語句中定義常量。

例如:

if (…){

const FOO =

‘BAR’; //

無效的invalid

}

if (…)

{

define(‘FOO’, ‘BAR’); // 有效的valid

}

(4).const採用一個普通的常量名稱,define可以採用表達式作為名稱。

const FOO = ‘BAR’;

for ($i = 0;

$i 32; ++$i) {

define(‘BIT_’ . $i, 1 $i);

}

(5).const只能接受靜態的標量,而define可以採用任何表達式。

例如:

const BIT_5 = 1

5; //

無效的invalid

define(‘BIT_5’, 1 5); //

有效的valid

(6).const定義的常量時大小寫敏感的,而define可通過第三個參數(為true表示大小寫不敏感)來指定大小寫是否敏感。

例如:

define(‘FOO’, ‘BAR’, true);

echo FOO; //

BAR

echo foo; //

BAR

相關函數:

define —

定義一個常量

說明:

bool define ( string $name , mixed $value [,

bool $case_insensitive = false ]

參數:

name :常量名。

value :常量的值;僅允許標量和 null。標量的類型是 integer,

float,string 或者 boolean。 也能夠定義常量值的類型為 resource ,但並不推薦這麼做,可能會導致未

知狀況的發生。

case_insensitive :如果設置為

TRUE,該常量則大小寫不敏感。默認是大小寫敏感的。比如, CONSTANT 和 Constant 代表了不同的值。(Note:

大小寫不敏感的常量以小寫

的方式儲存。)

返回值:成功時返回 TRUE, 或者在失敗時返回 FALSE.

constant —

返回一個常量的值

說明:

mixed constant ( string $name )

通過 name 返回常量的值。當你不知道常量名,卻需要獲取常量的值時,constant()

就很有用了。也就是常量名儲存在一個變量里,或者由函數返回常量名。該函數也適用

class constants。

參數:

name :常量名。

返回值:

返回常量的值。如果常量未定義則返回 NULL。

defined —

檢查某個名稱的常量是否存在

說明:

bool defined ( string $name )

檢查該名稱的常量是否已定義。

Note: 如果你要檢查一個變量是否存在,請使用 isset()。 defined()

函數僅對 constants 有效。如果你要檢測一個函數是否存在,使用 function_exists()。

參數:

name :常量的名稱。

返回值:

如果該名稱的常量已定義,返回 TRUE;未定義則返回

FALSE。

get_defined_constants:

Returns an associative array with the names of all the constants

and their values

以關聯數組返回常量名和常量的值。這包括那些由擴展以及由define()函數創建的常量。

linux源碼包安裝php中的./configure選項詳解

PREFIX是程序安裝位置,前面那個沒用過。

sbindir默認會放在PREFIX/bin目錄,所以不需要特別指定。

這是我安裝時的例子:

./configure –prefix=/usr/local/server/php –enable-fpm –with-fpm-user=www –with-fpm-group=www –with-config-file-path=/usr/local/server/php/etc –with-config-file-scan-dir=/usr/local/server/php/etc/php.d –enable-mbstring –with-mysql=/usr/local/server/mysql –with-pgsql=/usr/local/server/postgresql –with-pdo-pgsql=/usr/local/server/postgresql –with-pdo-mysql=/usr/local/server/mysql –enable-sockets –enable-sqlite-utf8 –enable-zip –enable-zend-multibyte –with-mysql-sock –with-gd –with-mcrypt –with-mysqli=/usr/local/server/mysql/bin/mysql_config

安裝結果是php被安裝到了/usr/local/server/php 目錄,sbin文件在/usr/local/server/php/sbin,php默認配置文件需要放到 /usr/local/server/php/etc 文件夾(etc默認不存在,新建一個,把php.ini放進去就可以了),配置文件掃描目錄是 /usr/local/server/php/etc/php.d (php.d目錄也需要手動建立)。

這樣一來就可以和系統目錄獨立了,然後編譯第二個php,指定prefix,例如 –prefix=/usr/local/server/php2 ,其他參數依樣修改,就可以安裝兩套php,啟動腳本自己建立一個就可以了,但是兩個php-fpm配置需要改動其中一個默認監聽端口,默認是9000 。其他服務軟件道理是一樣的,主要還是更改第二套服務軟件默認監聽端口,否則無法啟動,會提示端口已被佔用。

php如何獲取網址中的參數

比如有一個網址為

http://域名/goods.php?u=59id=24#pinglun

我想得到這個id值

可以用正則,也可以用php函數解析到數組中

用正則可以這樣

preg_match(‘/id=(\d+)/’,$_SERVER[“REQUEST_URI”],$m);//$_SERVER 這個表示當前網址url

print_r($m[1]);exit;

或者用parse_url()及parse_str()函數

$cur_q=parse_url($_SERVER[“REQUEST_URI”],PHP_URL_QUERY);

parse_str($cur_q,$myArray);

print_r($myArray[“id”]);exit;

拓展資料

PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本預處理器”)是一種通用開源腳本語言。語法吸收了C語言、Java和Perl的特點,利於學習,使用廣泛,主要適用於Web開發領域。PHP 獨特的語法混合了C、Java、Perl以及PHP自創的語法。它可以比CGI或者Perl更快速地執行動態網頁。用PHP做出的動態頁面與其他的編程語言相比,PHP是將程序嵌入到HTML(標準通用標記語言下的一個應用)文檔中去執行,執行效率比完全生成HTML標記的CGI要高許多;PHP還可以執行編譯後代碼,編譯可以達到加密和優化代碼運行,使代碼運行更快。

PHP的特性包括:

1. PHP 獨特的語法混合了 C、Java、Perl 以及 PHP 自創新的語法。

2. PHP可以比CGI或者Perl更快速的執行動態網頁——動態頁面方面,與其他的編程語言相比,

PHP是將程序嵌入到HTML文檔中去執行,執行效率比完全生成htmL標記的CGI要高許多;

PHP具有非常強大的功能,所有的CGI的功能PHP都能實現。

3. PHP支持幾乎所有流行的數據庫以及操作系統。

4. 最重要的是PHP可以用C、C++進行程序的擴展!

參考資料:百度百科 PHP

PHP中CURL方法curl_setopt()函數的參數詳解

PHP CURL curl_setopt 參數

bool curl_setopt (int ch, string option, mixed value)

curl_setopt()函數將為一個CURL會話設置選項。option參數是你想要的設置,value是這個選項給定的值。

下列選項的值將被作為長整形使用(在option參數中指定):

下列選項的值將被作為字符串:

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/204634.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-07 12:17
下一篇 2024-12-07 12:17

相關推薦

  • Python周杰倫代碼用法介紹

    本文將從多個方面對Python周杰倫代碼進行詳細的闡述。 一、代碼介紹 from urllib.request import urlopen from bs4 import Bea…

    編程 2025-04-29
  • Python字符串寬度不限制怎麼打代碼

    本文將為大家詳細介紹Python字符串寬度不限制時如何打代碼的幾個方面。 一、保持代碼風格的統一 在Python字符串寬度不限制的情況下,我們可以寫出很長很長的一行代碼。但是,為了…

    編程 2025-04-29
  • Python基礎代碼用法介紹

    本文將從多個方面對Python基礎代碼進行解析和詳細闡述,力求讓讀者深刻理解Python基礎代碼。通過本文的學習,相信大家對Python的學習和應用會更加輕鬆和高效。 一、變量和數…

    編程 2025-04-29
  • 如何在Java中拼接OBJ格式的文件並生成完整的圖像

    OBJ格式是一種用於表示3D對象的標準格式,通常由一組頂點、面和紋理映射坐標組成。在本文中,我們將討論如何將多個OBJ文件拼接在一起,生成一個完整的3D模型。 一、讀取OBJ文件 …

    編程 2025-04-29
  • 三星內存條參數用法介紹

    本文將詳細解釋三星內存條上面的各種參數,讓你更好地了解內存條並選擇適合自己的一款。 一、容量大小 容量大小是內存條最基本的參數,一般以GB為單位表示,常見的有2GB、4GB、8GB…

    編程 2025-04-29
  • Python3定義函數參數類型

    Python是一門動態類型語言,不需要在定義變量時顯示的指定變量類型,但是Python3中提供了函數參數類型的聲明功能,在函數定義時明確定義參數類型。在函數的形參後面加上冒號(:)…

    編程 2025-04-29
  • Python滿天星代碼:讓編程變得更加簡單

    本文將從多個方面詳細闡述Python滿天星代碼,為大家介紹它的優點以及如何在編程中使用。無論是剛剛接觸編程還是資深程序員,都能從中獲得一定的收穫。 一、簡介 Python滿天星代碼…

    編程 2025-04-29
  • 倉庫管理系統代碼設計Python

    這篇文章將詳細探討如何設計一個基於Python的倉庫管理系統。 一、基本需求 在着手設計之前,我們首先需要確定倉庫管理系統的基本需求。 我們可以將需求分為以下幾個方面: 1、庫存管…

    編程 2025-04-29
  • 寫代碼新手教程

    本文將從語言選擇、學習方法、編碼規範以及常見問題解答等多個方面,為編程新手提供實用、簡明的教程。 一、語言選擇 作為編程新手,選擇一門編程語言是很關鍵的一步。以下是幾個有代表性的編…

    編程 2025-04-29
  • Spring Boot中發GET請求參數的處理

    本文將詳細介紹如何在Spring Boot中處理GET請求參數,並給出完整的代碼示例。 一、Spring Boot的GET請求參數基礎 在Spring Boot中,處理GET請求參…

    編程 2025-04-29

發表回復

登錄後才能評論