亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php中函數的介紹和使用

發布時間:2020-06-22 14:07:08 來源:億速云 閱讀:167 作者:Leah 欄目:編程語言

這篇文章運用簡單易懂的例子給大家介紹php中函數的使用,代碼非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

1、函數的聲明

function 函數名([參數1,參數2...])
{
函數體;
return 返回值;
}

2、使用雙層for循環輸出表格

function table(){
echo "<table align='center' border='1px' width='600px'>";
echo "<caption><h2>通過函數輸出表格</h2></caption>";
for($out=0;$out<10;$out++){
$bgcolor = $out%2 == 0 ? "#FFFFFF" : "#DDDDDD";
echo "<tr bgcolor=".$bgcolor.">";
for($in=0;$in<10;$in++){
echo "<td>".$out*10+$in."</td>";
}
echo "</tr>";
}
echo "</table>";
}

3、函數tabel()改寫

function table($tableName,$rows,$cols){
echo "<table align='center' border='1px' width='600px'>";
echo "<caption><h2>$tableName</h2></caption>";
for($out=0;$out<$rows;$out++){
$bgcolor = $out%2 == 0 ? "#FFFFFF" : "#DDDDDD";
echo "<tr bgcolor=".$bgcolor.">";
for($in=0;$in<$cols;$in++){
echo "<td>".($out*$cols+$in)."</td>";
}
echo "</tr>";
}
echo "</table>";
}
table("此時你是我的唯一",5,3);

4、PHP變量的范圍 (分為局部變量和全局變量)

局部變量也稱為內部變量,是在函數內部聲明的變量,其作用域僅限于函數內部。

局部變量從存儲方式上可分為動態存儲類型和靜態存儲類型。函數中的局部變量,如果專門聲明為static存儲類別,默認都是動態地分配存儲空間的。

其中的內部動態變量在函數調用結束后自動釋放。如果希望在函數執行后,其內部變量依然保存在內存中,應使用靜態變量。在函數執行完畢后,靜態變量并不會消失,而是在所有對該函數的調用之間共享,即在函數再次執行時,靜態變量將接續前次的結果繼續運算,并且僅在腳本的執行期間函數第一次被調用時被初始化。要聲明函數變量為靜態的,需要關鍵字static。自行理解!

function demo($one){
$two = $one;
echo "在函數內部執行:$two+$one=".($two+$one)."<br/>";
}
demo(200);
echo "在函數外部執行:$two+$one=".($two+$one);   //非法訪問

全局變量也稱外部變量,是在函數的外部定義的,他的作用域變量定義處開始,到本程序文的結尾。

在函數中若要使用全局變量,必須要利用global關鍵字定義目標變量,以告訴函數主體此變量為全局變量。

$one = 200;
$two = 100;
function demo(){
//在函數內部使用global關鍵字加載全局變量$one和$two
global $one,$two;
echo "運算結果:$two+$one=".($two+$one)."<br/>"; //300
echo "運算結果:".($GLOBAL['two']+$GLOBAL['one'])."<br/>"; 
 
}

5、PHP函數參數的種類

(1)常規參數的函數

string example(string name,int age,double height)

(2)偽類型參數的函數:

PHP的偽類型:mixed number callback 三種

mixed funName(mixed $args)

number funName(number $args)

(3)引用參數的函數:

如果函數中的形參中有使用"&"修飾的參數,則在調用該函數時就必須傳入一個變量給這個參數,而不能傳遞一個值。

void funName(array $&arg)

(4)默認參數的函數:

默認值必須是常量表達式,不能是變量、類成員或者函數調用。PHP允許使用數組和特殊類型NULL作為默認參數。

mixed funName(string name[,string value[,int age]]) // 在參數列表中出現使用[]描述的參數
function person($name="張三",$age=20,$sex="男"){
echo "我的名字是:{$name},我的年齡是{$age},我的性別是{$sex}<br/>";
}

(5)可變個數參數的函數:

func_get_args();//將所有傳遞給腳本的函數的參數當作一個數組返回

func_num_args();//返回參數的總數

mixed func_get_arg(int $arg_num);//返回參數列表的某一項(0.....)

(6)mixed funName(string arg[,string ...])回調函數:函數參數為一個函數

mixed funName(callback arg)    //在參數列表中使用偽類型callback描述了解變量函數、使用變量函數聲明和應用回調函數,借助call_user_func_array()函數自定義回調函數,類靜態函數和對象的方法回調;

//變量函數不能用于語言結構,例如echo()
//print()、unset()、isset()、empty()
//include()、require()及類似的語句       
        function one($a,$b){
return $a+$b;
}
function two($a,$b){
return $a+$b+$b*$b;
}
function three($a,$b){
rerurn $a*$a*$a+$b*$b*$b;
}
$result = "one";
//$result = "two";
//$result = "three";
echo $result(1,2);
function filter($fun){
$fun();
}
function test(){
echo "haha!";
}
function test2(){
echo "houhou!";
}
filter("test");
filter("test2");//haha!houhou!
function fun($msg1,$msg2){
echo '$msg1='.$msg1;
echo '<br/>';
echo '$msg2='.$msg2;
}
call_user_func_array('fun',array('Lamp','兄弟連'));
//類靜態調用和對象的方法調用
class Demo{
static function fun($msg1,$msg2){
echo '$msg1='.$msg1;
echo '<br/>';
echo '$msg2='.$msg2;
}
}
class Test{
function fun($msg1,$msg2){
echo '$msg1='.$msg1;
echo '<br/>';
echo '$msg2='.$msg2;
}
}
//類靜態調用
call_user_func_array(array('Demo','fun'),array('Lamp','兄弟連'));
//對象的方法調用
call_user_func_array(array(new Test(),'fun'),array('Lamp','兄弟連'));

callback("函數名稱字符串");  //回調全局函數

callback(array("類名稱字符串","類中靜態方法名稱字符串"));//回調類中的靜態成員方法

callback(array(對象引用,"對象中方法名稱字符串");//回調對象中的靜態成員方法

遞歸函數:函數調用自身

6、使用自定義函數庫

函數庫并不是定義函數的PHP語法,而是編程時的一種設計模式。函數是結構化程序設計的模塊,是實現代碼重用的最重要的核心。為了更好的組織代碼,使自定義的函數可以在同一個項目的多個文件中使用,通常將多個自定義的函數組織到同一個文件或多個文件中。這些收集函數定義的文件就是創建的PHP函數庫。如果在PHP的腳本中想使用這些文件中定義的函數,就需要使用include、require、include_once、require_once中的一個函數,將函數庫文件載入到腳本程序中。

include和require語句,都是包括并運行指定文件。不同之處在于,對include語句來說,在執行文件時每次都要進行讀取和評估;而對require來說,文件只處理一次

(實際上,文件內容替換了require語句),這就意味著如果可能執行多次的代碼,則使用require效率比較高。另外,如果每次執行代碼時,讀取不同的文件,或者有通過一組

文件迭代的循環,就是用include語句。

require 的使用方法如 require("MyRequireFile.php"); 。這個函數通常放在 PHP 程序的最前面,PHP 程序在執行前,就會先讀入 require 所指定引入的文件,使它變成 PHP 程序網頁的一部份。常用的函數,亦可以這個方法將它引入網頁中。

include 使用方法如 include("MyIncludeFile.php"); 。這個函數一般是放在流程控制的處理部分中。PHP 程序網頁在讀到 include 的文件時,才將它讀進來。這種方式,可以把程序執行時的流程簡單化。

他們兩個的用途是完全一樣的,不一定非得哪個放在最前面哪個放在中間。他們最根本的區別在于錯誤處理的方式不一樣。

require一個文件存在錯誤的話,那么程序就會中斷執行了,并顯示致命錯誤

include一個文件存在錯誤的話,那么程序不會中端,而是繼續執行,并顯示一個警告錯誤。

關于php中函數的介紹和使用就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

满洲里市| 子洲县| 龙岩市| 河南省| 都安| 新营市| 桑日县| 南投市| 伽师县| 丹棱县| 天峨县| 休宁县| 斗六市| 驻马店市| 邹城市| 安达市| 中宁县| 海南省| 沙雅县| 巢湖市| 忻城县| 南木林县| 万年县| 陆良县| 郓城县| 武穴市| 乐业县| 永寿县| 神木县| 蒙自县| 陆丰市| 韶关市| 大田县| 漳浦县| 绥棱县| 长阳| 襄汾县| 晴隆县| 大冶市| 三台县| 广昌县|