摘要:基于互联网的应用正变得越来越普及,在这个过程中,有更多的站点将自身的资源开放给开发者来调用。对外提供的API 调用使得站点之间的内容关联性更强,同时这些开放的平台也为用户、开发者和中小网站带来了更大的价值。在开发API前,你需要的是给API设定一个框架,这个框架一定是要简单的且是容易扩展的。下面就是用就来看看如何使用PHP来创建一个API。API框架需要的特性面向对象和结构化的代码可修改的URL结构创建多个版本使用Hook来扩展框架API功能API可连接数据库表可定义多种输出格式选择方法请求类型(GET, POST, PUT, DELETE)API框架的组成部分API Framework主要由
阅读全文
随笔分类 - PHP
新的开始.新的向往
摘要:http://www.mysqlops.com/2011/06/21/weibo-sns-feed-push-pull.html
阅读全文
摘要:mysql> ALTER TABLE `sbear` ADD PRIMARY KEY ( `a_id` , `b_id` ) ;ERROR 1062 (23000): Duplicate entry ’88-501200′ for key ‘PRIMARY’建立联合主键时发现出错,88,501200已经早有多条记录了。主键建立失败,需要删除多余的记录,并且有多组这样的重复记录。 这时候使用“ign...
阅读全文
摘要:昨天写PHP代码时为了方便写了一句if(empty(intval($type)))报错,提示“Can't use function return value in write context”,一时有点晕。就改成$type = intval($type) if(empty($type))最后查PHP手册说明empty()中的参数只能是变量。是否PHP可以改进下。上面这种写法也挺美的吧!
阅读全文
摘要:一、软件包 a) freetds-stable.gz b) php-5.2.12.tar.gz 二、安装步骤 a) tar zxvf freetds-stable.gz b) cd freetds-0.82/ c) ./configure --prefix=/usr/local/freetds --with-tdsver=8.0 d) Make e) Make install f) Tar zxv...
阅读全文
摘要:目录1. 介绍 2. curl扩展的安装 3. curl_init 4. curl_setopt 5. curl_exec 6. curl_close 7. curl_version* 介绍PHP 支持libcurl(允许你用不同的协议连接和沟通不同的服务器)。, libcurl当前支持http, https, ftp, gopher, telnet, dict, file, 和ldap 协议。...
阅读全文
摘要:======================================================== [size=+2]静态调用的成员一定要定义成 static (PHP5 ONLY) 贴士:PHP 5 引入了静态成员的概念,作用和 PHP 4 的函数内部静态变量一致,但前者是作为类的成员来使用。静态变量和 Ruby 的类变量(class variable)差不多,所有类的实例共享同一...
阅读全文
摘要:一、软件包 a) pcre-devel-6.6-2.el5_1.7.i386.rpm b) lighttpd-1.4.28.tar.gz 二、安装步骤 a) Rpm –ivh pcre-devel-6.6-2.el5_1.7.i386.rpm b) Tar zxvf lighttpd-1.4.28.tar.gz c) Cd lighttpd-1.4.28 d) ./configure –prefi...
阅读全文
摘要:不多说: echo preg_replace('/(abc)\1/','123','i get abcabc,good');echo '<br />';echo preg_replace('/(abc)\1/','$1','i get abcabc,good');echo '<br />';echo preg_match('/(abc)\1/','abcabc');echo '<br />
阅读全文
摘要:0、用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的“函数”(译注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加上了双引号)。 1、如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。 2、$row[’id’] 的速度是$ro...
阅读全文
摘要:第25章 XML解析函数 45325.1 PHP中的语法解析函数 45325.1.1 utf8_decode函数:将用UTF-8方式编码的ISO-8859-1字符串转换成单字节的ISO-8859-1字符串 45325.1.2 utf8_encode函数:将ISO-8859-1编码的字符串转换为UTF-8编码 45425.1.3 xml_error_string函数:获取XML解析器的错误字符串 4...
阅读全文
摘要:这几个好好看下 (?:pattern) 匹配 pattern 但不获取匹配结果,也就是说这是一个非获取匹配,不进行存储供以后使用。这在使用 "或" 字符 (|) 来组合一个模式的各个部分是很有用。例如, 'industr(?:y|ies) 就是一个比 'industry|industries' 更简略的表达式。(?=pattern) 正向预查,在任何匹配 pattern 的字符串开始处匹配查找字符...
阅读全文
摘要:1、下载zf最新版Zend Framework- Downloads- Downloads 2、首先进入cmd,命令行窗口模式。直接打下面的命令,C:\Documents and Settings\Administrator>E:\PHP\开源框架\ZendFramework-1.11.3\ZendFramework-1.11.3\bin\zf.bat create project D:\temp...
阅读全文
摘要:PHP本身再老版本有一些问题,比如在 php4.3.10和php5.0.3以前有一些比较严重的bug,所以推荐使用新版。另外,目前闹的轰轰烈烈的SQL Injection也是在PHP上有很多利用方式,所以要保证 安全,PHP代码编写是一方面,PHP的配置更是非常关键。 我们php手手工安装的,php的默认配置文件在 /usr/local/apache2/conf/php.ini,我们最主要...
阅读全文
摘要:我的第一个开源项目,很小,试着学习学习开源!开源就是以少积多,总有一天我会做出个大的开源项目的!http://code.google.com/p/witer-pdo-mysql/
阅读全文
摘要:一、软件包 a) kernel-2.6.18-164.el5.src.rpm 二、安装步骤 a) Rpm –ivh kernel-2.6.18-164.el5.src.rpm b) Cd /usr/src/redhat/ c) Cp /boot/config-2.6.18-164.el5PAE SOURCE/ kernel-2.6.18-i686.config d) Vi SOURCE...
阅读全文
摘要:一、软件包 a) php-5.2.9.tar.gz b) php-5.2.9-fpm-0.5.10-unofficial.diff.gz c) nginx-0.8.52.tar.gz 二、安装步骤 a) tar zxvf php-5.2.9.tar.gz b) gzip -cd php-5.2.9-fpm-0.5.10-unofficial.diff.gz | patch -d php-5.2.9...
阅读全文
摘要:浏览器和服务器之间是通过 HTTP 协议进行连接通讯的。这是一种基于请求和响应模型的协议。浏览器通过 URL 向服务器发起请求,Web 服务器接收到请求,执行一段程序,然后做出响应,发送相应的html代码给客户端。 这就有了一个问题,Web 服务器执行一段程序,可能几毫秒就完成,也可能几分钟都完不成。如果程序执行缓慢,用户可能没有耐心等下去,就关闭浏览器了。 而有的时候,我们更本不关心这些耗时的脚...
阅读全文
摘要:今天搬过去六台服务器去机房,服务器做了集群,MYSQL数据库也做了主主,主从的数据同步。在MYSQL方面这次算是一个跨跃,三月份给MYSQL做过主从,现在为了数据库稳定所以做了主主,主从,一个数据库进行了四个备份(还有一个是定时备份),算是很强大了吧!集群上也算是进步了一些,以前的集群是三台,现在的集群是四台,算是小的改进。今天的感觉就是服务器太多了,内心中总有一种感觉对于网站服务器,服务器性能还...
阅读全文
摘要:一、 软件包 a) APC-3.0.18.tgz 二、 安装配置 a) Tar zxvf APC-3.0.18.tgz b) Cd APC-3.0.18 c) ./configure --enable-apc --enable-apc-mmap --with-apxs=/usr/local/apache/bin/apxs --with-php-config=/usr/local/php/bin/p...
阅读全文