mongodb 与php 结合开发

wget http://pecl.php.net/get/mongo-1.2.6.tgz
tar -zxvf mongo-1.2.6.tgz
cd mongo-1.2.6
/usr/local/php/bin/phpize
./configure –with-php-config=/usr/local/php/bin/php-config –enable-mongo
make & make install
编译完之后会显示一个路径,里面有mongo.so
vi /usr/local/php/etc/php.in
加入extension=mongo.so
/usr/local/apache2/bin/apachectl restart

[root@localhost bin]# ./mongo -uroot -p123 localhost:27017/admin
MongoDB shell version: 1.8.0
connecting to: localhost:27017/admin
> use test
switched to db test
db.addUser("user1","123");

//加入数据库管理员user1
使用数据库管理员user1登陆
./mongo -uuser1 -p123 localhost:27017/test
到htdoc下建立conn.php
$conn=new Mongo(“mongodb://user1:123@localhost:27017/test”);
$db=$conn->test;
find.php
c1;
//db.ci.find({name:”user1″});=>array(‘name’=>’user1’);
$arr=array(‘name’=>’user3′);
$rst=$c1->find($arr);
foreach($rst as $val){
print_r($val);
echo $val[_id].’
‘; //可以直接输出ID
}
如果需要获得_id值需要这么做
$oid = new MongoId($_GET[‘_id’]);
$arr=array(“_id”=>$oid);
$rst=$c1->find($arr);
insert.php
c1;
//db.c1.insert(name:”yongjie”,age:30,sex:”nan”);
$arr=array(“name”=>”yongjie”,”age”=>30,”sex”=>”nan”);
if($c1->insert($arr)){
echo “success”;
}else{
echo “false”;
}
remove.php
c1;
//db.c1.remove(name:”yongjie”);
$arr=array(“name”=>”yongjie”);
if($c1->remove($arr)){
echo “success”;
}else{
echo “false”;
}
update.php
c1;
//db.c1.update(name:”user4″,{$set:{age:10,sex:”nv”}});
$sarr=array(“name”=>”user4”);
$darr=array(‘$set’=>array(‘sex’=>’nv’,’age’=>10));
$opts=array(‘upsert’=>0,multiple=>1);
if($c1->update($sarr,$darr,$opts)){
echo “success”;
}else{
echo “false”;
}
关闭连接
$conn->close();

发表评论