首頁 後端開發 php教程 php call_user_func函數

php call_user_func函數

Jul 29, 2016 am 09:13 AM
array user

1. 函數說明

  呼叫回調函數。原型: mixed call_user_func ( callable cal ,mix edparameter [, mixed $… ]] )。 第一個參數 callback 是被呼叫的回呼函數,其餘參數是回呼函數的參數。參數可以有多個,也可以是陣列。   參數不可以為引用,但可以透過數組傳遞引用。以下為範例:

<code><span><?php</span><span><span>function</span><span>addone</span><span>(&<span>$num</span>)</span> {</span><span>$num</span> ++; 
}

<span>$num</span> = <span>0</span>;

call_user_func(<span>'addone'</span>, <span>$num</span>);
<span>echo</span><span>"num : "</span> . <span>$num</span> . <span>"\n"</span>;

call_user_func_array(<span>'addone'</span>, <span>array</span>(&<span>$num</span>) );
<span>echo</span><span>"num : "</span> . <span>$num</span> . <span>"\n"</span>;

<span>?></span></code>
登入後複製
  輸出:   0   1   傳回值:傳回回呼函數的回傳值,如果錯誤則傳回FALSE。 2. 例

命名空間的使用。


<code><span><?php</span><span>namespace</span><span>Foobar</span>;

<span><span>class</span><span>Foo</span> {</span><span>static</span><span>public</span><span><span>function</span><span>test</span><span>()</span> {</span><span>print</span><span>"Hello world!\n"</span>;
    }
}

call_user_func(<span>__NAMESPACE__</span> .<span>'\Foo::test'</span>); 
call_user_func(<span>array</span>(<span>__NAMESPACE__</span> .<span>'\Foo'</span>, <span>'test'</span>)); 

<span>?></span></code>
登入後複製


呼叫一個類別裡面的方法

<code><span><?php</span><span><span>class</span><span>myclass</span> {</span><span>static</span><span><span>function</span><span>test</span><span>()</span>
    {</span><span>echo</span><span>"Hello world!\n"</span>;
    }
}

<span>$classname</span> = <span>"myclass"</span>;

call_user_func(<span>array</span>(<span>$classname</span>, <span>'test'</span>));

<span>$myobject</span> = <span>new</span> myclass();

call_user_func(<span>array</span>(<span>$myobject</span>, <span>'test'</span>));

<span>?></span></code>
登入後複製
').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i
    ').text(i)); }; $numbering.fadeIn(1700); }); });

  • 以上就介紹了php call_user_func函數,包含了面向的內容,希望對PHP教學有興趣的朋友有幫助。
    本網站聲明
    本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

    熱AI工具

    Undresser.AI Undress

    Undresser.AI Undress

    人工智慧驅動的應用程序,用於創建逼真的裸體照片

    AI Clothes Remover

    AI Clothes Remover

    用於從照片中去除衣服的線上人工智慧工具。

    Undress AI Tool

    Undress AI Tool

    免費脫衣圖片

    Clothoff.io

    Clothoff.io

    AI脫衣器

    Video Face Swap

    Video Face Swap

    使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

    熱工具

    記事本++7.3.1

    記事本++7.3.1

    好用且免費的程式碼編輯器

    SublimeText3漢化版

    SublimeText3漢化版

    中文版,非常好用

    禪工作室 13.0.1

    禪工作室 13.0.1

    強大的PHP整合開發環境

    Dreamweaver CS6

    Dreamweaver CS6

    視覺化網頁開發工具

    SublimeText3 Mac版

    SublimeText3 Mac版

    神級程式碼編輯軟體(SublimeText3)

    使用C#中的Array.Sort函數對陣列進行排序 使用C#中的Array.Sort函數對陣列進行排序 Nov 18, 2023 am 10:37 AM

    標題:C#中使用Array.Sort函數對陣列進行排序的範例正文:在C#中,陣列是一種常用的資料結構,經常需要對陣列進行排序運算。 C#提供了Array類,其中有Sort方法可以方便地對陣列進行排序。本文將示範如何使用C#中的Array.Sort函數對陣列進行排序,並提供具體的程式碼範例。首先,我們要先了解Array.Sort函數的基本用法。 Array.So

    如何使用PHP中的array_combine函數將兩個陣列拼成關聯數組 如何使用PHP中的array_combine函數將兩個陣列拼成關聯數組 Jun 26, 2023 pm 01:41 PM

    在PHP中,有許多強大的陣列函數可以讓陣列的操作更加方便和快速。當我們需要將兩個陣列拼成一個關聯數組時,可以使用PHP的array_combine函數來實現這一操作。這個函數其實是用來將一個陣列的鍵當作另一個陣列的值,合併成一個新的關聯數組。接下來,我們將會講解如何使用PHP中的array_combine函數將兩個陣列拼成關聯數組。了解array_comb

    簡單明了的PHP array_merge_recursive()函式使用方法 簡單明了的PHP array_merge_recursive()函式使用方法 Jun 27, 2023 pm 01:48 PM

    在進行PHP編程時,我們常常需要將數組合併。 PHP提供了array_merge()函數來完成數組合併的工作,但是當數組中存在相同的鍵時,函數會覆寫原來的值。為了解決這個問題,PHP在語言中還提供了一個array_merge_recursive()函數,該函數可以合併數組並保留相同鍵的值,使得程式的設計變得更加靈活。 array_merge

    docker掛載目錄權限問題怎麼解決 docker掛載目錄權限問題怎麼解決 Feb 29, 2024 am 10:04 AM

    在Docker中,掛載目錄的權限問題通常可以透過以下方法解決:使用-v參數指定掛載目錄時新增權限相關的選項。可以透過在掛載的目錄後面新增:ro或:rw來指定掛載目錄的權限,分別表示只讀和讀寫權限。例如:dockerrun-v/host/path:/container/path:roimage_name在Dockerfile中定義USER指令來指定容器中執行的用戶,以確保容器內部的操作符合權限要求。例如:FROMimage_name#CreateanewuserRUNuseradd-ms/bin/

    PHP array_fill()函數用法詳解 PHP array_fill()函數用法詳解 Jun 27, 2023 am 08:42 AM

    在PHP程式設計中,陣列是一種非常重要的資料結構,能夠輕鬆處理大量資料。 PHP中提供了許多陣列相關的函數,array_fill()就是其中之一。本篇文章將詳細介紹array_fill()函數的用法,以及在實際應用上的一些技巧。一、array_fill()函數概述array_fill()函數的作用是建立一個指定長度的、由相同的值組成的陣列。具體來說,該函數的語法

    Java中的ArrayIndexOutOfBoundsException異常常見原因是什麼? Java中的ArrayIndexOutOfBoundsException異常常見原因是什麼? Jun 24, 2023 pm 10:39 PM

    Java是一種非常強大的程式語言,廣泛應用於各種開發領域。但是,在Java程式設計過程中,開發人員常會遇到ArrayIndexOutOfBoundsException異常。那麼,這個異常的常見原因是什麼呢? ArrayIndexOutOfBoundsException是Java中常見的一個執行時期例外。它表示在存取資料時,數組下標超出了數組的範圍。常見的原因包括以

    PHP array_change_key_case()函數使用方法介紹 PHP array_change_key_case()函數使用方法介紹 Jun 27, 2023 am 10:43 AM

    在PHP程式設計中,陣列是一個常用到的資料型別。而關於陣列的運算子也是相當多的,其中包含了array_change_key_case()函數。這個函數可以將數組中鍵名的大小寫轉換,從而方便我們進行資料的處理。本文就來介紹PHP中array_change_key_case()函數的使用方法。一、函數語法及參數array_change_ke

    如何在Java中將LinkedList轉換為Array? 如何在Java中將LinkedList轉換為Array? Aug 29, 2023 pm 11:09 PM

    LinkedList類別的toArray()方法將目前的LinkedList物件轉換為物件類型的陣列並傳回它。此數組按正確順序(從第一個元素到最後一個元素)包含此列表中的所有元素。它充當基於數組和基於集合的API之間的橋樑。因此,將LinkedList轉換為陣列-實例化LinkedList類別。使用add()方法填充它。呼叫上面建立的鍊錶上的toArray()方法並檢索物件數組。將物件數組的每個元素轉換為字串。範例 即時示範importjava.util.Arrays;importjava.uti

    See all articles