存档

文章标签 ‘PHP’

jQuery、Ajax、PHP、Json的一个综合例子

2010年3月15日

jQuery 是一个优秀的 Javascript 框架,对 js 进行了优秀的包装,提供了许多方便的功能。jQuery 对 ajax 的包装也堪称优秀。

jQuery 可以以 json 文件传输协议来传输数据(类似 xml,而且大有取代 xml 的趋势),而网站后台代码必须与之配合使用。PHP 是用 json_encode 函数来对返回的数组数据进行编码的,但这个函数只有 PHP5.2版本以上才支持。

从网上找到一个 json 的操作类,本人在 PHP4.4.7 版本下测试通过。本人还建了个函数 function my_json_encode($phparr),使代码兼容 PHP5.2 以上版本。

示例代码(包括 json 的类包软件)可以在以下网址下载:http://download.csdn.net/source/810895

阅读全文…

PHP编程, 前端脚本 , , , ,

提高PHP编程效率,提升PHP网站性能

2010年3月12日

0、用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会,注意:只有echo能这么 做,它是一种可以把多个字符串当作参数的“函数”(译注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号)。

1、如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。

2、$row[’id’] 的速度是$row[id]的7倍。

3、echo 比 print 快,并且使用echo的多重参数(译注:指用逗号而不是句点)代替字符串连接,比如echo $str1,$str2。

4、在执行for循环之前确定最大循环数,不要每循环一次都计算最大值,最好运用foreach代替。

5、注销那些不用的变量尤其是大数组,以便释放内存。

6、尽量避免使用__get,__set,__autoload。

7、require_once()代价昂贵。

8、include文件时尽量使用绝对路径,因为它避免了PHP去include_path里查找文件的速度,解析操作系统路径所需的时间会更少。

阅读全文…

PHP编程 , , , ,

Excel数据导入MySql

2010年3月2日

以前把Excel导入MySql主要采用以下两种方法:

1、将Excel转化成phpmyadmin可以导入的CVS格式,直接通过phpmyadmin导入。

2、通过PHP程序读取Excel,循环插入MySql数据库

今天发现一个更好的办法,使用一款叫 Excel to MySql 4.3的绿色程序,我是从这个地址下载到的:http://www.greendown.cn/soft/15317.html 。 具体步骤如下:

1. 启动程序,直接双击 xls2sql.exe 即可:

1

阅读全文…

数据库 , , , , ,

AJAX中文乱码PHP完美解决方法

2010年2月12日

AJAX的中文乱码可以大概分为两中,第一种是向服务器端发送中文参数时(xmlhttp.open(“getpost”,url,true)), 服务器端接收到的为乱码,这个也是我今天遇到的问题,没做处理之前,在IE里是正常的,但是在Firefox里面就出现了乱码,我先把接收到参数输出到一个文本里,没有发现什么问题,郁闷了,然后我就把查询语句在输出来观察(我这里是要从数据库里查出与参数相关的东西),终于发现问题,IE和 Firefox输出的参数不一样,虽然汉字上都一样,但是和前后连接上有细小的区别,于是认定了是编码问题,在网上查找了相关资料,都没能解决问题,但是得到一些启示,因为AJAX发送数据都是采用UTF-8编码的方式发送的,所以要在服务器端进行编码转换(我这里页面是采用GB2312编码的,如果是采用UTF-8的话应该不会有这步的问题),所以我在服务器端进行了UTF-8转GB2312,

$str=iconv(“UTF-8″,”GB2312″,$str);

然后测试,在Firefox上顺利解决了问题,以为大公告成了,可是再到IE下测试,发现IE又出现了问题,服务器端接收到的参数没值,这下就郁闷了,突然看到发送头设置了setRequestHeader(“Content-Type”,”application/x-www-form- urlencoded”);,就找到问题所在了,然后就在发送那里进行了参数编码:

阅读全文…

PHP编程 , ,

Linux服务器安装与配置Nginx+PHP+MySQL

2010年1月30日

一、 准备安装

1、下载软件:


以上是需要下载并安装的软件,最新版本请自行从Google搜索下载。

2、解压缩有压缩包

使用tar zxvf xxx.tar.gz 和 tar jxvf xxx.tar.bz2来解压缩。

阅读全文…

服务器 , , , ,

PHP搭建基于CodeIgniter框架的REST服务架构

2010年1月12日

最近两年,MySpace、Google、Yahoo、Facebook、淘宝和人人网这些互联网企业,都构建了自己的开放平台,打破了“我的地盘我做主”一类的网站建设常规思维,以开放的姿态,构建网络交互的生态圈。而这些开放平台几乎都采用了REST的服务架构。

什么是REST架构?

REST(Representational State Transfer)是一种轻量级的Web Service架构风格,其实现和操作明显比SOAP和XML-RPC更为简洁,可以完全通过HTTP协议实现,还可以利用缓存Cache来提高响应速度,性能、效率和易用性上都优于SOAP协议。

REST架构遵循了CRUD原则,CRUD原则对于资源只需要四种行为:Create(创建)、Read(读取)、Update(更新)和Delete(删除)就可以完成对其操作和处理。这四个操作是一种原子操作,即一种无法再分的操作,通过它们可以构造复杂的操作过程,正如数学上四则运算是数字的最基本的运算一样。

阅读全文…

架构设计 , , , ,

Nginx+PHP+MySQL双机互备、全自动切换方案

2010年1月11日

在生产应用中,某台“Nginx+PHP+MySQL”接口数据服务器,扮演的角色十分重要,如果服务器硬件或Nginx、MySQL发生故障,而 短时间内无法恢复,后果将非常严重。为了避免单点故障,我设计了此套方案,编写了failover.sh脚本,实现了双机互备、全自动切换,故障转移时间 只需几十秒。

一、双机互备、全自动切换方案:
1、拓扑图:
点击在新窗口中浏览此图片

阅读全文…

架构设计 , , ,

用PHP编写的30个游戏脚本——创建 10 个高级脚本

2010年1月8日

PHP 是一种易于使用、易于学习且可以广泛获取的编程语言。它非常适合开发在各种游戏中可以使用的简单脚本。无论是一个人玩简单的使用纸和笔的游戏,还是同一群人玩复杂的桌面角色扮演游戏,或者任意类型的联机游戏,本系列都提供了适合您的内容。本文将在 “可以用 PHP 编写的 30 个游戏脚本” 系列的第 1 部分和第 2 部分基础上,探究可以在各种类型的游戏中使用的 10 个优秀脚本 — 包括清单管理系统和提示脚本、文字游戏脚本、图像处理和诸如基诺之类的游戏脚本。

阅读全文…

PHP编程 ,

用PHP编写的30个游戏脚本——开发 10 个中级脚本

2010年1月8日

PHP 是一种易于使用、易于学习且可以广泛获取的编程语言。它非常适合开发在各种游戏中可以使用的简单脚本。无论是一个人玩简单的使用纸和笔的游戏,还是同一群人玩复杂的桌面角色扮演游戏,或者任意类型的联机游戏,本系列都提供了适合您的内容。本文将在 “可以用 PHP 编写的 30 个游戏脚本” 系列的 第 1 部分 基础上,探究可以在各种类型的游戏中使用的 10 个中级脚本。这些脚本适用于三种游戏:角色扮演游戏、机率游戏和文字游戏。

阅读全文…

PHP编程 ,

用PHP编写的30个游戏脚本——创建 10 个基本脚本

2010年1月8日

PHP 是一种易于使用、易于学习且可以广泛获取的编程语言。它非常适合开发在各种游戏中可以使用的简单脚本。无论是一个人玩简单的使用纸和笔的游戏,还是同一群人玩复杂的桌面角色扮演游戏,或者任意类型的联机游戏,本系列都提供了适合您的内容。“用 PHP 可以编写的 30 个游戏脚本” 系列中的每篇文章都将分别用不到 300 词的文字介绍 10 个脚本(3d10 表示 “掷三个 10 面的骰子”),这些介绍性文字甚至对于开发新手来说都十分简单,而且对于经验丰富的游戏玩家来说也十分有用。本系列的目的在于为您提供可以修改的内容来满足自身的需求,以便您可以在下一次游戏交流会上通过展示您的笔记本来给朋友和玩家们留下深刻印象。

阅读全文…

PHP编程 ,