Re: [請益] 初始化自定的php extension library

看板PHP作者 (Ricky)時間12年前 (2013/07/11 13:53), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/2 (看更多)
※ 引述《meowyih (meowyih)》之銘言: : 假設我有一個簡單的 C Library, : 裏面只有三個 functions: : /* 初始化整個 Library,只需呼叫一次 */ : 1. void my_library_initialize() : /* 取得一個數字, thread-safe */ : 2. int my_library_get_something() : /* finalize 整個 Library,釋放所有資源 */ : 3. void my_library_finalize() : 我想自己寫一個 php extension, : 讓 php 能直接使用 my_library_get_something()。 : 但我不知道 initialize() 和 finalize() 該放在哪裏, : 這二個 functions 應該只被呼叫一次, : 而非每次使用 my_library_get_something() 都重新再初始化, : 請問該怎麼做呢? 你可能要了解一下 php extension 裡面這 4 個 marco PHP_MINIT_FUNCTION -> 當 extension 被載入時初始化使用 PHP_MSHUTDOWN_FUNCTION -> 當 extension 被卸載時使用 PHP_RINIT_FUNCTION -> 每次 request 初始化 PHP_RSHUTDOWN_FUNCTION -> 每次 request 結束 MINIT 跟 MSHUTDOWN 只會在 server 啟動或結束時呼叫一次 RINIT 跟 RSHUTDOWN 會在每次 request 都會被呼叫 就看你的需求擺放嘍 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.130.136.115

07/11 14:03, , 1F
感謝!!!
07/11 14:03, 1F
文章代碼(AID): #1HtaXgJT (PHP)
文章代碼(AID): #1HtaXgJT (PHP)