搭建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索要

racknerd:美国大硬盘服务器(双路e5-2640v2/64g内存/256gSSD+160T SAS)$389/月

racknerd在促销美国洛杉矶multacom数据中心的一款大硬盘服务器,用来做存储、数据备份等是非常划算的,而且线路还是针对亚洲有特别优化处理的。双路e5+64G内存,配一个256G的SSD做系统盘,160T SAS做数据盘,200T流量每个月,1Gbps带宽,5个IPv4,这一切才389美元...洛杉矶大硬盘服务器CPU:2 * e5-2640v2内存:64G(可扩展至128G,+$64)硬...

npidc:9元/月,cn2线路(不限流量)云服务器,金盾+天机+傲盾防御CC攻击,美国/香港/韩国

npidc全称No Problem Network Co.,Limited(冇問題(香港)科技有限公司,今年4月注册的)正在搞云服务器和独立服务器促销,数据中心有香港、美国、韩国,走CN2+BGP线路无视高峰堵塞,而且不限制流量,支持自定义内存、CPU、硬盘、带宽等,采用金盾+天机+傲盾防御系统拦截CC攻击,非常适合建站等用途。活动链接:https://www.npidc.com/act.html...

Gcore(gcorelabs)俄罗斯海参崴VPS简单测试

有一段时间没有分享Gcore(gcorelabs)的信息了,这是一家成立于2011年的国外主机商,总部位于卢森堡,主要提供VPS主机和独立服务器租用等,数据中心包括俄罗斯、美国、日本、韩国、新加坡、荷兰、中国(香港)等多个国家和地区的十几个机房,商家针对不同系列的产品分为不同管理系统,比如VPS(Hosting)、Cloud等都是独立的用户中心体系,部落分享的主要是商家的Hosting(Virtu...

php环境搭建为你推荐
jolicloud怎么安装linux系统?简体翻译成繁体简体字怎么换成繁体。。?简体翻译成繁体有什么将简体中文翻译成繁体中文的网站啊深圳公交车路线深圳公交线路bluestacksBlueStacks安卓模拟器官方版怎么用?中小企业信息化信息化为中小企业发展带来了哪些机遇vbscript教程请教一下高手们,这个VBS脚本难不难啊,我想学学这个,但是又不知道该从哪入手,希望高手指点指点??ejb开发EJB是啥玩意了iphone6上市时间苹果6什么时候出?小米手柄小米蓝牙游戏手柄怎么连接游戏
美国vps租用 域名停靠 免费域名解析 net主机 idc测评网 光棍节日志 win8升级win10正式版 上海域名 京东商城0元抢购 lol台服官网 国外代理服务器地址 免费智能解析 免费网页申请 ca187 闪讯官网 服务器是干什么用的 美国盐湖城 西安主机 日本代理ip 华为k3 更多