搭建apache php-4.4.8 sqlite json开发环境搭建

php环境搭建  时间:2021-02-12  阅读:()

目录

文档控制记录. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误未定义书签。

1.引言. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1

2.开始搭建. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2

2.1sql ite简介. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2

2.2搭建步骤. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4

3.测试和几个应注意的问题. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5

3、 1终端状态下进行测试. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5

3、 2用C代码进行测试 test.c. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7

3、 3用php进行测试 test.php. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10

参考设计材料包含项目源代码屏幕录像指导、项目运行截图、项目设计说明书、任务书、报告书以及文献参考翻译

等完整的设计文件及源代码资料请联系68661508索要

1.引言

目的本文档旨指导apache+php+sql ite3开发环境的搭建需要源码apache_1.3.39、php-4.48、sql ite-3.3.8以及php关于sql ite3动态扩展库sql ite3-0.5,尤其是最后的那个动态扩展库对于php第5版本以下必需要这个库才能访问sql ite。

对象嵌入式WEB开发人员。

参考文档

《sqlite+php for arm.htm》

《SQLite移植ARM2410.html》

《fedora10下SQLite的移植.html》

《sqlite的移植.html》

《基于ARM11的PHP动态扩展库环境的搭建.doc》

《基于S3c6410的WEB开发环境的搭建.doc》

参考设计材料包含项目源代码屏幕录像指导、项目运行截图、项目设计说明书、任务书、报告书以及文献参考翻译

等完整的设计文件及源代码资料请联系68661508索要

2.开始搭建

2.1 sqlite简介

SQLite是一款轻型的数据库它的设计目标是嵌入式的而且目前已经在很多嵌入式产品中使用了它它占用资源非常的低在嵌入式设备中可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统同时能够跟很多程序语言相结合 比如Tcl、 PHP、 Java等还有ODBC接口同样比起Mysql、 PostgreSQL这两款开源世界著名的数据库管理系统来讲它的处理速度比他们都快。

SQLite虽然很小巧但是支持的SQL语句不会逊色于其他开源数据库它支持的SQL包括

ATTACH DATABASE

BEGIN TRANSACTIONcomment

COMMIT TRANSACTION

COPY

CREATE INDEX

CREATE TABLE

CREATE TRIGGER

CREATE VIEW

DELETE

DETACH DATABASE

DROP INDEX

DROP TABLE

DROP TRIGGER

DROP VIEW

END TRANSACTION

EXPLAINexpression

INSERT

ON CONFLICT clause

PRAGMA

REPLACE

ROLLBACK TRANSACTION

SELECT

UPDATE

同时它还支持事务处理功能等等。也有人说它象Microsoft的Access有时候真的觉得有点象但是事实上它们区别很大。 比如SQLite支持跨平台操作简单能够使用很多语言直接创建数据库而不象Access一样需要Office的支持。如果你是个很小型的应用或者你想做嵌入式开发没有合适的数据库系统那么现在你可以考虑使用SQLite。 目前它的最新版本是3.2.2它的官方网站是 http://www. sqlite.org或者http://www. sqlite.com.cn能在上面获得源代码和文档。同时因为数据库结构简单系统源代码也不是很多也适合想研究数据库系统开发的专业人士

参考设计材料包含项目源代码屏幕录像指导、项目运行截图、项目设计说明书、任务书、报告书以及文献参考翻译

等完整的设计文件及源代码资料请联系68661508索要

下面是访问SQLite官方网站: http://www.sql ite.org/时第一眼看到关于SQLite的特性.

1.ACI D事务

2.零配置–无需安装和管理配置

3.储存在单一磁盘文件中的一个完整的数据库

4.数据库文件可以在不同字节顺序的机器间自由的共享

5.支持数据库大小至2TB

6.足够小,大致3万行C代码,250K

7.比一些流行的数据库在大部分普通数据库操作要快

8.简单,轻松的API

9.包含TCL绑定,同时通过Wrapper支持其他语言的绑定

10. 良好注释的源代码,并且有着90%以上的测试覆盖率

11.独立:没有额外依赖

12.Source完全的Open,你可以用于任何用途,包括出售它

13.支持多种开发语言,C, PHP, Perl, Java,ASP.NET,Python

参考设计材料包含项目源代码屏幕录像指导、项目运行截图、项目设计说明书、任务书、报告书以及文献参考翻译等完整的设计文件及源代码资料请联系68661508索要

2.2搭建步骤

由于先前已经搭建好apache+php+mysql的开发环境但是mysql所占用的cpu资源和内存资源过大移植到arm11上以后效果并不是很理想所以重新动手搭建apache+php+sql ite的开发环境对于apache+php的开发环境可以参照《基于S3c6410的WEB开发环境的搭建.doc》 这里不再说明

1、 准备好php-4.48、 sql ite3.7.12.1和动态扩展库包sql ite3-0.5主要搭建phpsql ite;至于apache,我们不需要去改变它,由于要跟新的开发板对接此处必须采用arm-l inux-gcc4.3.2版本。

搭建php

2.1、采用以前搭建好的apache+php开发环境下的php-4.48,从而避免又去重新配置php的相关文件当然也可以直接下载一个php-4.48源码包从头来搭建对于可能遇到的问题及解决办法详见《基于S3c6410的WEB开发环境的搭建.doc》 .

2.2、终端输入 CC=arm-l inux-gcc ./configure

--prefix=/usr/local/apache-arm11/php

--with-apxs=/usr/local/apache-arm11/apache/bin/apxs--enable-pdo=shared

--with-sql ite=shared --with-pdo-sql ite=shared--with-zl ib--host=arm-l inux--enable-track-vars --with-xml

,如果配置configure文件出现问题具体办法可参考《基于S3c6410的WEB开发环境的搭建.doc》和《sql ite+phpforarm.htm》 。

2、 3、 由于修改了configure文件对于后期由于要装载动态库 固我们要修改configure生成的Makefi le文件在Makefi le文件开头添加 LDFLAGS+=-ldl 方便后期能够链接动态库其他两个地方main/php.h和ext/standard/dl .c此处不需要修改如果是从头搭建请参考《基于S3c6410的WEB开发环境的搭建.doc》 。

2、 4终端输入 make。

2、 5终端输入 make instal l .

搭建sqlite3.7.12.1

3、 1配置

CC=arm-l inux-gcc ./configure--prefix=/usr/local/apache-arm11/sql ite--host=arm-l inux。

参考设计材料包含项目源代码屏幕录像指导、项目运行截图、项目设计说明书、任务书、报告书以及文献参考翻译等完整的设计文件及源代码资料请联系68661508索要

搭建php动态扩展库sqlite3-0.5

4、 1 unzip & untar the package。

4、 2 run "phpize"。

4、 3 run "./configure

--with-php-config=/usr/local/apache-arm11/php/bin/php-config --with-sqlite3=/path/to/your/sqlite3/install” .

4、 4 make && make install

4、 5 (optionally) copy DB/sqlite3.php to

/path/to/php/lib/php/DB/sqlite3.php。

4、 6拷贝libsqlite3. so.0.8.6到/usr/lib目录下

并创建两个链接libsqlite3. so、 libsqlite3. so.0

4、 6拷贝sql ite3到/usr/bin目录下

最后将搭建好的apache+php+sql ite开发环境包压缩并下载到开发板上进行测试操作后面会附上两个测试程序和几个主要问题。

搭建JSON格式化数据json1.2.1

5、 1配置

CC=arm-linux-gcc ./configure

--with-php-config=/usr/local/apache-arm11/php/bin/php-config

--host=arm-l inux

5、 2 make && make install

5、 3 php程序开头处加上dl ("json. so") ;

3.测试和几个应注意的问题

3、 1终端状态下进行测试

1、进入到sql ite/bin目录下运行sql ite3.

2、创建表

参考设计材料包含项目源代码屏幕录像指导、项目运行截图、项目设计说明书、任务书、报告书以及文献参考翻译等完整的设计文件及源代码资料请联系68661508索要

3、删除表sqlite> drop table studentssqlite> . tablessqlite>

4、查看表结构sqlite> create table students(id integer,name text,age integer) ;sqlite> . schema students

CREATE TABLE students(id integer,name text,age integer) ;sqlite>

5、插入列sqlite> alter table students add cul;sqlite> alter table students add column sex text;sqlite> . schema students

CREATE TABLE students(id integer,name text,age integer, cul, sextext) ;sqlite>

6、插入表记录sqlite> insert into students values(1, 'aa' , 10,0, 'm' ) ;sqlite> insert into students values(2, 'bb' , 11, 1, 'f' ) ;sqlite> select * from students;

1 |aa| 10|0|m

2|bb| 11 | 1 |fsqlite>

7、重命名表sqlite> alter table students rename to stu;sqlite>

8、删除某一列这为列cul

参考设计材料包含项目源代码屏幕录像指导、项目运行截图、项目设计说明书、任务书、报告书以及文献参考翻译

等完整的设计文件及源代码资料请联系68661508索要

sqlite> begin transaction;sqlite> create temporary table stu_bak(id integer,name text,ageinteger, sex text) ;sqlite> insert into stu_bak select id,name,age, sex from stu;sqlite> drop table stu;sqlite> create table stu(id integer,name text,age integer, sextext) ;sqlite> insert into stu select id,name,age, sex from stu_bak;sqlite> drop table stu_bak;sqlite> select * from stu;

1 |aa| 10|m

2|bb| 11 |fsqlite> commit;sqlite>

9、退出程序sqlite> .quit

3、 2用C代码进行测试 test. c

#include <stdlib.h>

#include <stdio.h>

#include "/usr/local/apache-arm11/sqlite/include/sqlite3.h" //绝对路径static int callback(void *NotUsed, int argc, char **argv, char

**azColName)

{int i ;for(i=0; i<argc; i++)

{printf("%s = %s\n", azColName[i] , argv [i]) ;

}printf("\n") ;return 0;

}

参考设计材料包含项目源代码屏幕录像指导、项目运行截图、项目设计说明书、任务书、报告书以及文献参考翻译

等完整的设计文件及源代码资料请联系68661508索要

int main(int argc, char **argv)

{sqlite3 *db;char *zErrMsg = 0;int rc;if( argc!=3 )

{fprintf(stderr, "Usage: %s DATABASE SQL-STATEMENT\n",argv[0] ) ;

}rc = sqlite3_open(argv[1] , &db) ;if( rc )

{fprintf(stderr, "Can' t open database: %s\n",sqlite3_errmsg(db) ) ;sqlite3_close(db) ;

}rc = sqlite3_exec(db, argv[2] , callback, 0, &zErrMsg) ;if( rc!=SQLITE_OK )

{fprintf(stderr, "SQL error: %s\n", zErrMsg) ;

}sqlite3_close(db) ;

参考设计材料包含项目源代码屏幕录像指导、项目运行截图、项目设计说明书、任务书、报告书以及文献参考翻译等完整的设计文件及源代码资料请联系68661508索要

SugarHosts新增Windows云服务器sugarhosts六折无限流量云服务器六折优惠

SugarHosts糖果主机商我们较早的站长们肯定是熟悉的,早年是提供虚拟主机起家的,如今一直还在提供虚拟主机,后来也有增加云服务器、独立服务器等。数据中心涵盖美国、德国、香港等。我们要知道大部分的海外主机商都只提供Linux系统云服务器。今天,糖果主机有新增SugarHosts夏季六折的优惠,以及新品Windows云服务器/云VPS上线。SugarHosts Windows系统云服务器有区分限制...

HostDare($33.79/年)CKVM和QKVM套餐 可选CN2 GIA线路

关于HostDare服务商在之前的文章中有介绍过几次,算是比较老牌的服务商,但是商家背景财力不是特别雄厚,算是比较小众的个人服务商。目前主流提供CKVM和QKVM套餐。前者是电信CN2 GIA,不过库存储备也不是很足,这不九月份发布新的补货库存活动,有提供九折优惠CN2 GIA,以及六五折优惠QKVM普通线路方案。这次活动截止到9月30日,不清楚商家这次库存补货多少。比如 QKVM基础的五个方案都...

ManSora:英国CN2 VPS,1核/1GB内存/10GB SSD/1TB流量/100Mbps/KVM,$18.2/月

mansora怎么样?mansora是一家国人商家,主要提供沪韩IEPL、沪日IEPL、深港IEPL等专线VPS。现在新推出了英国CN2 KVM VPS,线路为AS4809 AS9929,可解锁 Netflix,并有永久8折优惠。英国CN2 VPS,$18.2/月/1GB内存/10GB SSD空间/1TB流量/100Mbps端口/KVM,有需要的可以关注一下。点击进入:mansora官方网站地址m...

php环境搭建为你推荐
windows优化大师怎么用Windows优化大师怎么用支付宝查询余额支付宝钱包怎么查余额?微信如何建群微信怎么建立群微信如何建群微信建群怎么建iphone越狱后怎么恢复苹果手机越狱之后能恢复原来吗?数据库损坏数据库坏了怎么办雅虎天盾雅虎天盾、瑞星杀毒软件、瑞星防火墙、卡卡上网安全助手能同时使用吗?人人逛街为什么女人都喜欢逛街?谢谢了,大神帮忙啊商标注册查询官网如何在网上查询商标是否注册?小米手柄小米蓝牙游戏手柄怎么连接游戏
过期域名 长沙服务器租用 韩国vps 重庆vps租用 希网动态域名 enzu awardspace java主机 云主机51web debian7 轻量 web服务器架设 中国电信宽带测速网 申请网站 深圳域名 万网主机 登陆qq空间 测试网速命令 免费赚q币 建站技术 更多