CentOS 安装 mongobdb 和 php mongodb扩展

1。准备工作第一步 升级php

默认CentOS 5.5 的 php版本 是 5.1.6 ,为了更好的使用 mongodb,首先升级到php-5.2.17 ,具体操作如下

# rpm –import http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka

# vi /etc/yum.repos.d/CentOS-Base.repo 增加下面信息

[utterramblings]
name=Jason's Utter Ramblings Repo
baseurl=http://www.jasonlitka.com/media/EL$releasever/$basearch/
enabled=1
gpgcheck=1
gpgkey=http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka

执行命令,自动升级。

yum update php -y
yum install libmcrypt -y

2.安装gcc (如果没有安装gcc的话)

yum install gcc Continue reading »CentOS 安装 mongobdb 和 php mongodb扩展

PHP5.3开发者模式

PHP开发者模式

最近升级到php5.36 最新版本运行,总是会很多 “Fatal Error” 或 “Notice” 错误,后来发现Notice 是因为 php.ini 里在development模式下定义error_reporting = E_ALL | E_STRICT, 在此模式下php解释器检查语法比较严格,如果想忽略的话可以改为error_reporting  =  E_ALL & ~E_NOTICE 来跳过Notice级别的警告。

而deprecate的error警告,提示我们的PHP程序要与时俱进的向着最新的编码要求看齐,这样在以后升级PHP版本时才不会带来很多不可预测的错误,编码也更加规范。

php升级为5.3后,程序会报 Function split() is deprecated 的错误。 这是因为种种原因(主要是关于正则的原因,具体见后),split这个函数在新版本不支持了。 在php中,再使用deprecated的函数会报错,必须改掉。(java里deprecated的函数只是给警告,还可以继续用) 改为什么呢? 看第一个参数,如果第一个参数不是正则表达式,split改为 explode;如果是正则表达式,split改为preg_split。 explode会比以前快很多,因为以前要考虑正则,explode不考虑正则。 ————- PHP 5.3.0 之後的 regex, 希望使用 PCRE 的規格, POSIX Regex 都不建議使用了(統一 Regex, 避免規格太多?). 所以下述是不建議使用的 Function (POSIX), 與建議替換成的 Function (PCRE) 列表, . . . → Read More: PHP5.3开发者模式

php表单双引号JSON交互

php 提交的表单中有双引号,单引号

可用stripslashes($string) 函数处理,处理之后可以正常的在非转义条件下使用。

尤其是当json数据和php交互时,以一个简单的交互为例:

//将简单的javascript hash Object转为json字符串 function simpleJSON (obj){ var jsonattr=[]; for (var i in obj) { if (obj.hasOwnProperty(i)) { jsonattr.push(‘”‘+i+'”:”‘+obj[i]+'”‘); } } return ‘{‘+jsonattr.join(‘,’)+’}'; } var jsonParam={}; jsonParam.name=”张三”; jsonParam.sex=”未知”; jsonParam.age=”-100″; $.ajax({ url : request_url.php data : ‘jsonParam=’+twinium.tool.simpleJSON(jsonParam), async : false, success : function(txt) {alert(“执行成功”);} });

上面运用的代码与request_url.php 交互,在php端需要将得到的jsonParam参数处理一下:

$jsonParam=stripslashes($_GET[‘jsonParam’]); $josnObj=json_decode($jsonParam); var_dump($jsonObj); //可以看到已经成功解析JSON . . . → Read More: php表单双引号JSON交互

win2003 apache2.2.17 php5.3配置

Win2003 安装 apache 2.2.17 + php5.3.4 或5.3.6 +  Mysql 配置

Aapache安装

apache-2.2.17 下载地址 :http://httpd.apache.org/download.cgi   , http://www.apache.org/dist//httpd/binaries/win32/

版本选择httpd-2.2.17-win32-x86-no_ssl.msi (openssl多了个ssl安全认证模式,它的协议是HTTPS而不是HTTP,无特殊ssl连接需要下载no_ssl的版本即可)。

安装:一路next 下去 填写 network domain、server domain 一般填“localhost”即可,管理员邮箱随便填一个邮箱就可以(以后服务器出现问题,会提示联系管理员邮箱,方便处理问题。)

安装成功:一般安装结束时会请求是否开启apache服务,可以确定开启,自动打开Apache Service Monitor 同时在电脑右下角的任务栏里有一个绿色的apache服务器运行图标,显示为”>” 启动状态,此时可以本地打开浏览器输入http://localhost 或者 http://127.0.0.1 或者在其他机器上输入 该服务器ip到浏览器访问 http://xx.xx.xx.xx/  可以看到简单的测试页面 “It works” 说明apache已经成功运行。 Continue reading »win2003 apache2.2.17 php5.3配置

php $_GET $_POST $_REQUEST区别用法

php $_GET $_POST $_REQUEST 区别用法

今天修改一个php程序,源程序是在“regist_global”打开的情况的下写的,很多服务器出于安全考虑会关闭这一选项,所以该程序的适用性下降。然而又不太清楚哪些变量时GET传递,哪些又是POST传递的,此时想到了适用REQUEST来统一获取,解决了这一问题。

$_GET、$_POST、$_REQUEST区别: Continue reading »php $_GET $_POST $_REQUEST区别用法