擴充 加密 SQLite3 PHP 原始碼
從網上下了很多說是已經實現了加密的sqlite3源碼,也下了wxsqlite3裡sqlite3的源碼,自己的編譯方式是用vc8的命令列把源碼放在php源碼裡編譯產生DLL,(還有一個小問題,VC編譯出來的DLL PHP用不了,看來DLL檔案也是給誰用就得用誰產生嗎)由於不會C的原因所以報錯的代碼直接淘汰了,而產生成功的DLL檔案卻一直沒有發現有加密功能(調用函數查看了裡面所有的方法)。感覺似乎不應該是源碼的問題,可能還有哪些地方沒有修改到?或者說因為是編譯成為php使用的DLL,所以相應的要添加一些PHP有關的內容?本人小白,如果有大神會從編譯的就最好不過了,已經實現了加密的php的sqlite3擴充也感激不盡~
回複討論(解決方案)
“ 還有一個小問題,VC編譯出來的DLL PHP用不了”
用不了?PHP很少可以說基本上不會直接用DLL。說實話不是很清楚樓主描述
“ 還有一個小問題,VC編譯出來的DLL PHP用不了”
用不了?PHP很少可以說基本上不會直接用DLL。說實話不是很清楚樓主描述
http://blog.sina.com.cn/s/blog_6b36735b0100rroh.html 這裡是我命令列編譯參考的東西。。。
和就是說同樣的代碼上面的網址的方法編譯出來PHP能調用,但VC編譯出來就啟動並執行時候就提示可能不是一個PHP擴充檔案。
在 window 中編譯 php 擴充,是需要下載支撐包的(不是什麼都開源的)
並且需要注意 VC 的版本
php5.2 VC6
php5.3、php5.4 VC9
php5.5 VC11
版本不同,動態連結程式庫的入口地址也不同
如果需要修改源碼,那麼必須遵守 php 擴充的規範
在 window 中編譯 php 擴充,是需要下載支撐包的(不是什麼都開源的)
並且需要注意 VC 的版本
php5.2 VC6
php5.3、php5.4 VC9
php5.5 VC11
版本不同,動態連結程式庫的入口地址也不同
如果需要修改源碼,那麼必須遵守 php 擴充的規範
動態連結程式庫的入口地址是指我編譯不同版本的PHP的擴充的時候,都要修改擴充裡相應的動態連結程式庫入口地址是嗎? 那這樣的話不會C就不可能自己編譯出擴充了啊。。。我完全不會C
完全不會C,自然就不能自己寫或修改源碼了
但環境配置正確,編譯現成的代碼也還是可以的
由於 php for window 不是全部開源的,其核心庫是先行編譯的
所以如果 VC 編譯器不配套的話,就無法運行成功
由於 php for window 不是全部開源的,其核心庫是先行編譯的
所以如果 VC 編譯器不配套的話,就無法運行成功
我從源碼編譯也要看VC版本嗎,運行不成功是指什麼呢?PHP源碼我已經編譯過了配置在apache上能夠用啊。我看到PHP源碼裡的擴充的檔案夾裡除了多出幾個PHP開頭的C檔案,還有很多C之外的東西,感覺用VC編譯出來的DLL(版本沒有錯誤的前提)是因為少了這些檔案所以才會彈提示說這不是一個PHP擴充。
另外我看到很多人說wxsqlite3的實現不錯,大哥你用過嗎
1、你編譯的源碼需要是 php 擴充的 c 源碼,而非供 window 用的 c 源碼
2、不清楚你說“PHP源碼我已經編譯過了配置在apache上能夠用啊”的含義
1、你編譯的源碼需要是 php 擴充的 c 源碼,而非供 window 用的 c 源碼
2、不清楚你說“PHP源碼我已經編譯過了配置在apache上能夠用啊”的含義
http://www.boilingbit.com/blog/windows%E4%B8%8B%E7%BC%96%E8%AF%91php/
我說的編譯大概是上面那的網址的那麼回事,就是說編譯好後配置上apache然後能夠解析我寫的PHP檔案。
第一條我懂了,就是說下下來的源碼是windows用的,而要編譯出PHP用的DLL的話,這些源碼還需要進一步修改,是嗎
對!c 的源碼需配上 php 介面
你能給出你的 c 源碼的地址嗎
對!c 的源碼需配上 php 介面
你能給出你的 c 源碼的地址嗎
http://sourceforge.net/projects/wxcode/files/Components/wxSQLite3/
說實話源碼下了很多,但看到大家用的開源的加密的C源碼的話大多是這裡的,我覺得把這個搞出來靠譜一點。。。