PHP操作MongoDB配置与学习笔记
2,安装(windows only)
到官网下载对应的包
解压到d:mongodb
创建d:mongodbdata放置数据文件
3,运行mongodb
d:mongodbbin下有一些可执行文件,其中mongod.exe是服务器端,mongo.exe是客户端。
运行cmd,输入
d:mongodbbin>mongod.exe -dbpath d:mongodbdata
服务器成功启动
4,让php支持MongoDB
下载php_mongo.dll,注意版本,php5.3.x应该支持v9的(有些老资料让apache的下v6,其实要看看phpinfo后下载对应的版本);
修改php.ini,增加 extension = php_mongo.dll;
重启apache.
代码如下 | 复制代码 |
<?php //************************* //格式=>("mongodb://用户名:密码@地址:端口/默认指定数据库",参数)
//************************* $db=$conn->mydb; #选择mydb数据库 $collection=$db->column; #选择集合(选择'表') //注意:
//**向集合中插入数据,返回bool判断是否插入成功. **/ //**向集合中安全插入数据,返回插入状态(数组). **/ //**以下两次插入的为同一条记录(相同的_id),因为它们的值相同**/
//** 修改更新 **/ //** 替换更新 **/ //** 批量更新 **/ //** 自动累加 **/ //** 匹配到就更新,否则新增 **/ /** 删除节点 **/ /** 附加新数据到节点 **/ /** 判断更新 **/ /** 删除某数组节点的最后一个元素 **/ /** 删除某数组节点的第一个元素 **/ /** 删除某数组节点的元素 **/ # 注意: /** 删除 **/
/** 查询文档中的记录数 **/ /** /** 集合中所有文档 **/ /** 查询一条数据 **/ /** age,type 列不显示 **/ /** 只显示user 列 **/ /** (存在type,age节点) and age!=0 and age<50 **/ /** 分页获取结果集 **/ /** 排序 **/ /** 创建索引 **/ /** 取得查询结果 **/ |
例1
代码如下 | 复制代码 |
function del_dir($dir){ if (($file == '.') || ($file == '..')) { continue; } if (file_exists( $cacheDir .'/'.$file)) { //删除完操作 |
例2
代码如下 | 复制代码 |
<? ?> |
例3
代码如下 | 复制代码 |
function removeDir($dirName) |
例4
删除几天前创建的目录
代码如下 | 复制代码 |
<?php |
代码如下 | 复制代码 |
//原始图像 $dst = "/upload/20120914/20120914040740-0.jpg"; //注意图片路径要正确 //得到原始图片信息 $dst_info = getimagesize($dst); switch ($dst_info[2]) { case 1: $dst_im =imagecreatefromgif($dst);break; case 2: $dst_im =imagecreatefromjpeg($dst);break; case 3: $dst_im =imagecreatefrompng($dst);break; case 6: $dst_im =imagecreatefromwbmp($dst);break; default: die("不支持的文件类型1");exit; } //水印图像 $src = "/images/shuiyin.png"; //注意路径要写对 $src_info = getimagesize($src); switch ($src_info[2]) { case 1: $src_im =imagecreatefromgif($src);break; case 2: $src_im =imagecreatefromjpeg($src);break; case 3: $src_im =imagecreatefrompng($src);break; case 6: $src_im =imagecreatefromwbmp($src);break; default: die("不支持的文件类型1");exit; }
//半透明格式水印 //$alpha = 50;//水印透明度 //imagecopymerge($dst_im,$src_im,$dst_info[0]-$src_info[0]-10,$dst_info[1]-$src_info[1]- 10,0,0,$src_info[0],$src_info[1],$alpha);
//支持png本身透明度的方式 imagecopy($dst_im,$src_im,$dst_info[0]-$src_info[0]-10,$dst_info[1]-$src_info[1]-10,0,0,$src_info [0],$src_info[1]);
//保存图片 switch ($dst_info[2]){ case 1: imagegif($dst_im,$dst);break; case 2: imagejpeg($dst_im,$dst);break; case 3: imagepng($dst_im,$dst);break; case 6: imagewbmp($dst_im,$dst);break; default: die("不支持的文件类型2");exit; } imagedestroy($dst_im); imagedestroy($src_im); |
给一个标准的图片水印类
代码如下 | 复制代码 |
在网上找的水印代码: ($product_img,$waterPos=0,$waterImage="",$waterText="",$textFont=5,$textColor="#FF0000") 本的范围 $R, $G, $B)); //--------------------------------------------------------------------------------------- |
这里要说一些,默认情况下,PHP的CURL功能是没有开启的,所以你要自己去开启这个功能,需要在php.ini中把 ;extension= php_curl.dll 前面的 " ; " 号去掉!!!
好,我讲讲昨天晚上的程序吧,虽然最后没有成功,但是还是学习到一些东西的。
代码如下 | 复制代码 |
$login="http://www.phpyu.com/index.php?action=login"; |
/////创建一个具有唯一文件名的临时文件。 若成功,则该函数返回新的临时文件名。若失败,则返回 false。
代码如下 | 复制代码 |
$ch=curl_init($login_url); /////初始化一个CURL对象 |
//如果你想把一个头包含在输出中,设置这个选项为一个非零值。
代码如下 | 复制代码 |
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); ///设置不输出在浏览器上 |
/////如果你想PHP去做一个正规的HTTP POST,设置这个选 项为一个非零值。这个POST是普通的 application/x-www-from-urlencoded 类型,多数被HTML表单使用。
代码如下 | 复制代码 |
curl_setopt($ch,CURLOPT_POSTFIELDS,$post_file); ////传递一个作为HTTP "POST"操作的所有数据的字符串。 |
上面已经完成了模拟登录的过程
下面要做的就是进入具有权限的页面了,要记得你现在已经登录了,你应该把登录的凭证cookie保存了起来。
代码如下 | 复制代码 |
$url="http://www.phpyu.com/admin/××"; |
////把这个页面显示在浏览器上,这里要特别注意!!就是如果把它显示在浏览器上的时候 下面的$contents 就会变成 一个布尔类型 true
代码如下 | 复制代码 |
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie_file); |
例2
代码如下 | 复制代码 |
<?php
|
注:如果遇到无法请求https站点的情况,可能是因为无法验证证书或者域名,只要在curl_setopt_array前增加以下两项就可以了:
代码如下 | 复制代码 |
$params[CURLOPT_SSL_VERIFYPEER] = false; $params[CURLOPT_SSL_VERIFYHOST] = false; |
代码如下 | 复制代码 |
/* |
相关文章
IntelliJ IDEA2021.1 配置大全(超详细教程)
这篇文章主要介绍了IntelliJ IDEA2021.1 配置大全(超详细教程),需要的朋友可以参考下...2021-04-18- 由于要使用mikoomi mongodb plugin插件,所以需要php对mongodb的扩展支持,默认通过源安装的php并没有mongodb的扩展支持,具体可以通过php -m|grep mongo 验证 。这里就结...2016-11-25
- VPN可以虚拟出一个专用网络,让远处的计算机和你相当于处在同一个局域网中,而中间的数据也可以实现加密传输,用处很大,特别是在一些大公司,分公司处在不同的区域。...2016-01-27
- 这篇文章主要介绍了Tomcat配置及如何在Eclipse中启动,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-02-04
- 如果我们需要安培Laravel4的话最php最低要求要在php5.3.7版本并且我们需要把mcrypt与openss这两个扩展开启才可以,具体步骤我们参考下文。 前面我们介绍我了 com...2016-11-25
详解Maven profile配置管理及激活profile的几种方式
这篇文章主要介绍了详解Maven profile配置管理及激活profile的几种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-01-26- 这篇文章主要介绍了IDEA如何添加配置文件到classpath中,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-09-19
- 通常php.ini的位置在:复制代码 代码如下:/etc目录下或/usr/local/lib目录下。如果你还是找不到php.ini或者找到了php.ini修改后不生效(其实是没找对),请使用如下办法:1.新建php文件,写入如下代码复制代码 代码如下:<?phpe...2014-05-31
- 以下就是部署PHP时的4个配置修改说明,大家一个一个进行学习研究。1、short_open_tag 是什么呢? 决定是否允许使用代码开始标志的缩写形式(<? ?> )。如果要和 XML 结合使用PHP,可以禁用此选项以便于嵌入使用<?x...2015-10-21
- 在使用vue-router的项目中,实例化VueRouter是其配置选项routes该选项指定路由与视图的组件的关系或者路由与其他路由的关系,Router配置选项中是其中最重要的配置。本文就详细的介绍一下...2021-10-25
华为畅享20Pro配置怎么样?华为畅享20Pro参数配置分析
华为畅享20Pro配置怎么样?对于即将上市的华为畅享20 Pro手机,很多的网友们也是相当关注的,大家都想要知道这款华为畅享20 Pro手机的配置到底怎么样,赶紧看看吧...2020-06-29- vue项目中有一些方法需要在多个页面调用,但为了避免在每个页面都import进来,可以把方法加到原型上去,这样在每个组件中都能使用了,下面这篇文章主要给大家介绍了关于配置vue全局方法的两种方式,需要的朋友可以参考下...2021-09-13
安装使用Mongoose配合Node.js操作MongoDB的基础教程
这篇文章主要介绍了安装使用Mongoose来让Node.js操作MongoDB的基础教程,前端js+后端node+js操作MongoDB正是所谓最流行的一种JavaScript全栈开发方案,需要的朋友可以参考下...2016-03-03- 我们在php中上传文件就必须使用#_FILE变量了,这个自动全局变量 $_FILES 从 PHP 4.1.0 版本开始被支持。在这之前,从 4.0.0 版本开始,PHP 支持 $HTTP_POST_FILES 数组。这...2016-11-25
- 1、简介Smarty是一个使用PHP写出来的模板PHP模板引擎,是目前业界最著名的PHP模板引擎之一。它分离了逻辑代码和外在的内容,提供了一种易于管理和使用的方法,用来将原本与HTML代码混杂在一起PHP代码逻辑分离。简单的讲,目...2014-05-31
详解element-ui 表单校验 Rules 配置 常用黑科技
这篇文章主要介绍了element-ui 表单校验 Rules 配置 常用黑科技,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-07-11- 传统的关系数据库一般由数据库(database)、表(table)、记录(record)三个层次概念组成,MongoDB是由数据库(database)、集合(collection)、文档对象(document)三个层次组成。MongoDB对于关系型数据库里的表,但是集合中没有列、行和关...2013-09-11
tomcat9 下载安装和配置+整合到eclipse的教程详解
这篇文章主要介绍了tomcat9 下载安装和配置+整合到eclipse,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-07-28修复 Mac brew 安装 mongodb 报 Error: No available formula with the name ‘mongodb’ 问题详解
最近在同事新的 Mac 电脑上安装 mongodb,报了错误 Error: No available formula with the name ‘mongodb’,今天就说说这个问题如何解决,需要的朋友可以参考下...2020-07-11- 这篇文章主要介绍了pytest配置文件pytest.ini的详细使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-04-17