我該如何編寫PHP opcode,將它保存在一個文件中並讓Zend引擎執行它?任何方法或黑客都是受歡迎的,只要它有效。編寫PHP操作碼並讓它執行。怎麼做?
回答
有幾個用戶空間方法(來自插件)可以處理Opcodes。
- http://uk.php.net/apc_bin_load(和http://uk.php.net/apc_bin_dump)
- http://uk.php.net/bcompiler_read/http://uk.php.net/bcompiler_write_file
既不生產然而,因爲操作碼不被設計爲是用戶可寫的語言(不像鸚鵡)純文本。
這意味着我可以用apc_bin_load覆蓋緩存的文件,我猜...因此下一個問題將是如何看起來漂亮的操作碼語句與實際使用的二進制表示形式相關聯。你知道這件事嗎?參考文獻或其他? – Raffael
http://stackoverflow.com/questions/1795425/how-to-get-opcodes-of-php有一些信息,主要是指「Vulcan Logic Dumper」 - http://pecl.php.net/package/vld –
有一個名爲ulopcodes的擴展,它允許您通過它暴露給PHP代碼的函數發出自己的操作碼。
例如:
ulopcodes_emit(ZEND_ECHO, "Hello world!");
將創建將由VM執行的當前oparray該行。
此擴展程序純粹是教育性的,不適用於生產代碼。
(聲明:我是ulopcodes的創建者)
是否有導出操作碼的擴展名? – kodmanyagha
是的,您可以使用[vld](https://github.com/derickr/vld)輸出生成的操作碼。 – pmmaga
- 1. 將PHP編譯爲操作碼並執行操作碼
- 2. PDO PHP編寫,並用UNIX_TIMESTAMP()執行
- 3. 編碼PHP而不執行它
- 4. 我該怎麼做才能讓這段代碼正常工作
- 5. 怎麼做Java的重寫工作
- 6. 在Java中執行新操作後,代碼塊會執行什麼操作?
- 7. performSelectorInBackground並執行UI操作
- 8. MPI.Op並執行操作
- 9. 如何編寫PHP代碼來執行CRON作業?
- 10. 你怎麼讓JavaScript代碼執行*爲了*
- 11. 我執行的操作不起作用,它很容易編譯
- 12. 在PHP上存儲PHP代碼並讓它運行
- 13. 如何讓vba執行此操作?
- 14. 無法讓ClientScriptManager執行任何操作
- 15. 對JQuery選擇進行分組並對它們執行操作?
- 16. 如何讓用戶輸入python代碼並執行它?
- 17. 如何讓超鏈接在PHP中執行操作?
- 18. PHP/MySQL來SESSION - 怎麼做
- 19. PHP操作碼與實際執行的二進制代碼有什麼關係?
- 20. 我該怎麼做才能讓它自動打電話?
- 21. 做file_get_contents和readfile執行PHP代碼?
- 22. FilterOutpuStream是否正常執行寫操作?
- 23. 擴展Hive:編寫既執行Map也執行Reduce操作的UDF
- 24. 編寫獲取命令並執行它的腳本
- 25. 編寫jquery插件,它並沒有執行
- 26. 如何編寫vSphere腳本並遠程執行它
- 27. 我該怎麼做才能讓Symfony在執行結束時不清除SESSION?
- 28. 在塔架中,如何在編寫回應後執行操作?
- 29. 如何在Clojure中編寫/執行類型操作?
- 30. 如何編寫測試用例以執行刪除操作
什麼是操作碼? – abcde123483
嘗試谷歌它:) – Raffael