从网上下了很多说是已经实现了加密的sqlite3源码,也下了wxsqlite3里sqlite3的源码,自己的编译方式是用vc8的命令行把源码放在php源码里编译生成DLL,(还有一个小问题,VC编译出来的DLL PHP用不了,看来DLL文件也是给谁用就得用谁生成吗)由于不会C的原因所以报错的代码直接淘汰了,而生成成功的DLL文件却一直没有发现有加密功能(调用函数查看了里面所有的方法)。感觉似乎不应该是源码的问题,可能还有哪些地方没有修改到?或者说因为是编译成为php使用的DLL,所以相应的要添加一些PHP有关的内容?本人小白,如果有大神会从编译的就最好不过了,已经实现了加密的php的sqlite3扩展也感激不尽~扩展加密SQLite3PHP源代码

解决方案 »

  1.   

    “还有一个小问题,VC编译出来的DLL PHP用不了”
    用不了?PHP很少可以说基本上不会直接用DLL。说实话不是很清楚楼主描述
      

  2.   


    http://blog.sina.com.cn/s/blog_6b36735b0100rroh.html  这里是我命令行编译参考的东西
    和就是说同样的代码上面的网址的方法编译出来PHP能调用,但VC编译出来就运行的时候就提示可能不是一个PHP扩展文件。
      

  3.   

    在 window 中编译 php 扩展,是需要下载支撑包的(不是什么都开源的)
    并且需要注意 VC 的版本
    php5.2 VC6
    php5.3、php5.4 VC9
    php5.5 VC11
    版本不同,动态链接库的入口地址也不同
    如果需要修改源码,那么必须遵守 php 扩展的规范
      

  4.   


    动态链接库的入口地址是指我编译不同版本的PHP的扩展的时候,都要修改扩展里相应的动态链接库入口地址是吗?  那这样的话不会C就不可能自己编译出扩展了啊我完全不会C
      

  5.   

    完全不会C,自然就不能自己写或修改源码了
    但环境配置正确,编译现成的代码也还是可以的由于 php for window 不是全部开源的,其核心库是预编译的
    所以如果 VC 编译器不配套的话,就无法运行成功
      

  6.   


    我从源码编译也要看VC版本吗,运行不成功是指什么呢?PHP源码我已经编译过了配置在apache上能够用啊。我看到PHP源码里的扩展的文件夹里除了多出几个PHP开头的C文件,还有很多C之外的东西,感觉用VC编译出来的DLL(版本没有错误的前提)是因为少了这些文件所以才会弹提示说这不是一个PHP扩展。另外我看到很多人说wxsqlite3的实现不错,大哥你用过吗
      

  7.   

    1、你编译的源码需要是 php 扩展的 c 源码,而非供 window 用的 c 源码
    2、不清楚你说“PHP源码我已经编译过了配置在apache上能够用啊”的含义
      

  8.   


    http://www.boilingbit.com/blog/windows%E4%B8%8B%E7%BC%96%E8%AF%91php/
    我说的编译大概是上面那的网址的那么回事,就是说编译好后配置上apache然后能够解析我写的PHP文件。第一条我懂了,就是说下下来的源码是windows用的,而要编译出PHP用的DLL的话,这些源码还需要进一步修改,是吗
      

  9.   

    对!c 的源码需配上 php 接口
    你能给出你的 c 源码的地址吗
      

  10.   


    http://sourceforge.net/projects/wxcode/files/Components/wxSQLite3/说实话源码下了很多,但看到大家用的开源的加密的C源码的话大多是这里的,我觉得把这个搞出来靠谱一点