如果是單一入口模式的在index.php里的都會有簡介
/**
*
**/
如果是自己,或團隊開發的自己框架,有的會註明
2. 編譯php擴展一定要用vc6嗎 - PHP內核源碼分析
我個人理解是: 官方說 windows下的apache 要用VC6 我想應該使用了動態編譯(減少php.dll的大小)用VC寫的程序都應該知道,有個動態跟靜態連接那麼應該是apache2.dll這個文件 肯能需要VC6的一些lib庫支持??畢竟VC6是經典的C++編譯連接器當然,你如果編譯或者使用C++或者使用delphi等語言為PHP增加擴展功能肯定不限制你用什麼編譯器 因為如果你用VS2010這些編譯的話 只要設置成靜態的 還有取消微軟的託管完全可以兼容的? ?當然,如果用delphi編寫 肯能需要一些回調聲明??以為C++跟delphi不是同個聲明數據調用完後 進行內存數據銷毀的話肯能有區別以上完全個人理解 認為不當的 就當道聽途說 不用太當真
3. 請問一般怎麼分析一個PHP項目源代碼
拿到一個已經開發好的項目,該從哪裡開始分析?
首先分析項目有哪些模塊,然後分析每個模塊中有哪些功能,然後注意每個功能是如何實現的。
觸發某個事件,調用了什麼方法,跟著方法去看?(但這樣做往往會忽略方法中變數什麼時候在哪定義的,最好先整個頁面如何顯示研究一遍再從頁面的事件入手)。
4. 什麼是PHP源碼
你現在看的網路 就是由源碼(代碼)組成
而編寫網站代碼語言分很多種 就像都可以造汽車 只是廠家不同 製造工藝不同 有的先進 有的貴有的便宜
主流的網站代碼語言 asp, asp.net, php 我只知道這么多其實還有很多
都是由不同的公司開發的 雖然編寫語言不同 但是他們的目的都是一樣 製作網站 或程序
php源碼就是程序語言的一種
5. PHP是如何執行代碼解析過程的
就PHP語言來說,它也是一組符合一定規則的約定的指令。 在編程人員將自己的想法以php語言實現後,通過PHP的虛擬機(確切的來說應該是PHP的語言引擎Zend)將這些PHP指令轉變成C語言 (可以理解為更底層的一種指令集)指令,而c語言又會轉變成匯編語言, 最後匯編語言將根據處理器的規則轉變成機器碼執行。這是一個更高層次抽象的不斷具體化,不斷細化的過程。
6. php c語言的源代碼。入口函數為什麼找不到。不是main嗎。如果不是 那是 那個函數。 在那個文
我覺得是 main/main.c 這個文件
7. 開發php內核擴展如何使用GDB來調試 - PHP內核源碼分析
這個問題曾在我去某公司面試時被提起過,可惜考官問的是php的BUG調試方法,後來居然說的就是Core
mp,當時我就想這和PHP一點毛關系都沒有,開啟Core
mp幾乎是所有C/C++開發必備的,只是常態,可能是他們的PHP擴展用得太多了,也從側面說明了php的擴展比起其它語言來要麻煩許多。
8. PHP源碼到底是什麼
PHP,是英文超級文本預處理語言Hypertext Preprocessor的縮寫。PHP 是一種 HTML 內嵌式的語言,是一種在伺服器
端執行的嵌入HTML文檔的腳本語言,語言的風格有類似於C語言,被廣泛的運用。PHP源碼指的使用PHP開發的實例,沒有經過二次封裝,能夠直接進行二
次開發的程序,PHP簡單易學,如果你想學網站開發,PHP是一個不錯的選擇,因會PHP跟其它語言相對有一定的優勢:
1、PHP是開放的源代碼:所有的PHP源代碼事實上都可以得到。
2、PHP是免費的。和其它技術相比,PHP本身免費。
3、php的快捷性,程序開發快,運行快,技術本身學習快。嵌入於HTML:因為PHP可以被嵌入於HTML語言,它相對於其他語言,編輯簡單,實用性強,更適合初學者。
4、跨平台性強:由於PHP是運行在伺服器端的腳本,可以運行在UNIX、LINUX、WINDOWS下。
5、效率高:PHP消耗相當少的系統資源。
6、圖像處理:用PHP動態創建圖像
7、面向對象:在php5 中,面向對象方面都有了很大的改進,現在php完全可以用來開發大型商業程序。
8、專業專註:
9. 如何用C語言編寫PHP擴展的詳解
1:預定義
在home目錄,也可以其他任意目錄,寫一個文件,例如caleng_mole.def
內容是你希望定義的函數名以及參數:
int a(int x,int y)
string b(string str,int n)
2:到php源碼目錄的ext目錄
#cd /usr/local/php-5.4.0/ext/
執行命令,生成對應擴展目錄
#./ext_skel --extname=caleng_mole --proto=/home/hm/caleng_mole.def
3:修改config.m4
去掉dnl的注釋
PHP_ARG_ENABLE(caleng_mole, whether to enable caleng_mole support,
Make sure that the comment is aligned:
[ --enable-caleng_mole Enable caleng_mole support])
4:修改caleng_mole.c
代碼如下:
/* {{{ proto int a(int x, int y)
*/
PHP_FUNCTION(a)
{
int argc = ZEND_NUM_ARGS();
int x;
int y;
int z;
if (zend_parse_parameters(argc TSRMLS_CC, "ll", &x, &y) == FAILURE)
return;
z=x+y;
RETURN_LONG(z);
}
/* }}} */
/* {{{ proto string b(string str, int n)
*/
PHP_FUNCTION(b)
{
char *str = NULL;
int argc = ZEND_NUM_ARGS();
int str_len;
long n;
char *result;
char *ptr;
int result_length;
if (zend_parse_parameters(argc TSRMLS_CC, "sl", &str, &str_len, &n) == FAILURE)
return;
result_length = str_len * n;
result = (char *) emalloc(result_length + 1);
ptr = result;
while (n--) {
memcpy(ptr, str, str_len);
ptr += str_len;
}
*ptr = '