php 自定義條件,php如何自定義乙個方法

2021-10-25 20:38:09 字數 1719 閱讀 1941

在php中可以通過【function foo($arg_1, $arg_2, /* ..., */ $arg_n)】形式定義乙個方法。

使用者自定義函式

乙個函式可由以下的語法來定義:

example #1 展示函式用途的偽**<?php

function foo($arg_1, $arg_2, /* ..., */ $arg_n)

echo "example function.\n";

return $retval;

任何有效的 php **都有可能出現在函式內部,甚至包括其它函式和類定義。

函式名和 php 中的其它識別符號命名規則相同。有效的函式名以字母或下劃線打頭,後面跟字母,數字或下劃線。可以用正規表示式表示為:^[a-za-z_\x80-\xff][a-za-z0-9_\x80-\xff]*$。

tip請參見使用者空間命名指南。

函式無需在呼叫之前被定義,除非是下面兩個例子中函式是有條件被定義時。

當乙個函式是有條件被定義時,必須在呼叫函式之前定義。

example #2 有條件的函式<?php

$makefoo = true;

/* 不能在此處呼叫foo()函式,

因為它還不存在,但可以呼叫bar()函式。*/

bar();

if ($makefoo) {

function foo()

echo "i don't exist until program execution reaches me.\n";

/* 現在可以安全呼叫函式 foo()了,

因為 $makefoo 值為真 */

if ($makefoo) foo();

function bar()

echo "i exist immediately upon program start.\n";

example #3 函式中的函式<?php

function foo()

function bar()

echo "i don't exist until foo() is called.\n";

/* 現在還不能呼叫bar()函式,因為它還不存在 */

foo();

/* 現在可以呼叫bar()函式了,因為foo()函式

的執行使得bar()函式變為已定義的函式 */

bar();

php 中的所有函式和類都具有全域性作用域,可以定義在乙個函式之內而在之外呼叫,反之亦然。

php 不支援函式過載,也不可能取消定義或者重定義已宣告的函式。

note: 從 a 到 z 的 ascii 函式名是大小寫無關的,不過在呼叫函式的時候,使用其在定義時相同的形式是個好習慣。

php 的函式支援可變數量的引數和預設引數。參見 func_num_args(),func_get_arg() 和 func_get_args()。

在 php 中可以呼叫遞迴函式。

example #4 遞迴函式<?php

function recursion($a)

if ($a < 20) {

echo "$a\n";

recursion($a + 1);

note: 但是要避免遞迴函式/方法呼叫超過 100-200 層,因為可能會使堆疊崩潰從而使當前指令碼終止。 無限遞迴可視為程式設計錯誤。

php加密自定義版權,PHP自定義加密方式

這篇文章主要介紹了php自定義加密方式,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下 簡單編碼函式 與php decode函式對應 function php encode str ord 函式返回字串的首個字元的 ascii 值。chr 函式從指定的 ascii 值返回字元。簡單解碼...

PHP自定義異常

雖然php5提供的異常處理類exception具備常用的一些功能。但有時候我們希望使用不同的異常類,針對特定型別的異常進行處理,此事就需要自定義異常類。自定義異常類非常簡單,只需要繼承自exception類,並新增自定義的成員屬性和方法即可。接下來通過乙個例項進行學習。class customexc...

PHP自定義函式

使用者自定義函式也稱自定義函式,它們不是php提供的,是由程式設計師建立的.由於自己建立了這樣的函式,所以就可以完全控制這些函式.因此可以讓乙個函式完全按照自己希望的方式執行.1,申明函式 在php中,定義函式的方法同其他程式語言幾乎一樣.下面是php申明函式的語法結構 function funct...