我使用命令行中的PHP,並試圖將數據嵌入到源代碼文件中。我可以在Ruby中使用__END__
構造,在Perl中使用__DATA__
構造,但我似乎無法找到在PHP中使用它的方法。目標是能夠將數據嵌入到PHP文件中,然後在執行過程中將數據讀入數組進行處理。我怎樣才能在PHP中做到這一點?由於數據和文件執行的設置方式,將數據包含在單獨的文件中並不是一個好的選擇。在PHP中等效於Ruby的`__END__`或Perl的`__DATA__`構造
6
A
回答
7
您可以使用__halt_compiler()
其目的是,正如其名字,正是制止編譯器用於將數據嵌入到文件的剩餘部分的目的。
一個基本的例子將是:
<?php
// Do something boring here
$data = file_get_contents(__FILE__, FALSE, NULL, __COMPILER_HALT_OFFSET__);
$obj = json_decode($data, TRUE);
echo $obj['message'];
__halt_compiler();
{"status":"example", "message":"hello, __halt_compiler!"}
的輸出,正如人們所期望,是hello, __halt_compiler!
3
您可以使用__halt_compiler()並在該行代碼之後嵌入數據。文檔中有一個很好的例子。
4
使用__halt_compiler()
結構:
<?php
echo 'hello!';
__halt_compiler();
echo 'bar''; this will not cause a parse error
相關問題
- 1. 等效於PHP的list()的JavaScript構造?
- 2. 在Ruby中等效於PHP的dirname(__ FILE__)?
- 3. 等效於.NET的構造函數
- 4. PHP的escapeshellarg的Perl等效
- 5. PHP的等效Perl的TIE
- 6. Perl的等效PHP的preg_callback
- 7. C++中的Infile Handle(Perl中的ala __DATA__)
- 8. Python等效於Ruby的#each_cons?
- 9. Scala等效於Ruby中的ActiveSupport的Object.try
- 10. PHP QuickForm等效於Ruby on Rails
- 11. 類似語言功能用Perl和Ruby __END__比較
- 12. 在Perl中Ruby的irb等價物?
- 13. 在Perl中構造框架
- 14. PHP的strstr()等效於JavaScript
- 15. Python的os.execvp等效於PHP
- 16. PHP等效於Python的repr()
- 17. 等效於php的stream_context_create
- 18. 對於類/構造函數,functools'partial'的python等效
- 19. char.IsLetterOrDigit等效於php
- 20. Url.Content()等效於php?
- 21. PHP等價於Perl行嗎?
- 22. Python的Ruby等效「_」
- 23. Ruby的Gemfile等效
- 24. 在PHP或Javascript中構造html?
- 25. Perl等效PHP_AUTH_PW
- 26. Javascript等價於Perl的\ Q ... \ E或quotemeta()
- 27. 等效於來自PHP中的Java
- 28. 這是對Perl構造函數調用的等效函數調用嗎?
- 29. Ruby的等價於PHP的ucfirst()函數
- 30. Ruby的等價於PHP的「get_defined_vars」函數?
**參見**:http://stackoverflow.com/questions/2059713 – dreftymac