- 博客(28)
- 资源 (4)
- 问答 (1)
- 收藏
- 关注
原创 php_pdo预处理
预处理语句可以带来两大好处: 查询仅需解析(或预处理)一次,但可以用相同或不同的参数执行多次。当查询准备好后,数据库将分析、编译和优化执行该查询的计划。对于复杂的查询,此过程要花费较长的时间,如果需要以不同参数多次重复相同的查询,那么该过程将大大降低应用程序的速度。通过使用预处理语句,可以避免重复分析/编译/优化周期。简言之,预处理语句占用更少的资源,因而运行得更快。 提供给预处理语句
2016-05-31 18:41:49 595
原创 php_pdo 异常处理
pdo异常处理设置:设置PDO::ATTR_ERRMODE ,有以下三个值:PDO::ERRMODE_SILENT: 默认模式,不主动报错,需要主动以 $pdo->errorInfo()的形式获取错误信息。PDO::ERRMODE_WARNING: 引发 E_WARNING 错误,主动报错PDO::ERRMODE_EXCEPTION: 主动抛出 exceptions 异常,需要以try{}cath(
2016-05-31 16:48:26 1538
原创 php_pdo详解
PDO 类PDO { //创建一个表示数据库连接的 PDO 实例 __construct ( string $dsn [, string $username [, string $password [, array $driver_options ]]] ) //启动一个事务 bool beginTransaction ( void ) //提交一个事务
2016-05-30 17:27:13 976
原创 算法时间复杂度计算方法
一、概念: 时间复杂度是总运算次数表达式中受n的变化影响最大的那一项(不含系数) 比如:一般总运算次数表达式类似于这样: a*2^n+b*n^3+c*n^2+d*n*lg(n)+e*n+f a ! =0时,时间复杂度就是O(2^n); a=0,b<>0 =>O(n^3); a,b=0,c<>0 =>O(n^2)依此类推 实例:for(i=1;i<=n;i++) {//循环了n*n次,当
2016-05-30 15:09:41 15533
转载 php获取用户和服务器ip及其地理位置详解
获取用户ip:/** * php获取用户真实 IP */function getIP(){ if (isset($_SERVER)){ if (isset($_SERVER["HTTP_X_FORWARDED_FOR"])){ $realip = $_SERVER["HTTP_X_FORWARDED_FOR"]; } else
2016-05-29 08:40:28 4537
原创 js获取客户端信息
js获取客户端time,cookie,url,ip,refer,user_agent信息:<script src="http://pv.sohu.com/cityjson?ie=utf-8"></script> <script type="text/javascript">window.onload=function(){ gettime(); //js获取当前时间 get
2016-05-29 08:34:23 3853
转载 windows下php:error_log()发送邮件设置
php.ini 设置:[mail function]; For Win32 only.; http://php.net/smtpSMTP = localhost; http://php.net/smtp-portsmtp_port = 25; For Win32 only.; http://php.net/sendmail-fromsendmail_from = 要用的发送邮件的邮箱地
2016-05-29 08:25:30 1600
转载 PHP多种序列化/反序列化的方法
1. serialize和unserialize函数serialize() 函数,把复杂的数据类型压缩到一个字符串中,把变量和它们的值编码成文本形式,这有利于存储或传递 PHP 的值,同时不丢失其类型和结构 unserialize() 函数对单一的已序列化的变量进行操作,将其转换回 PHP 的值 例:$stooges = array('Moe','Larry','Curly');$new =
2016-05-27 17:54:53 2754
转载 php错误日志记录设置
对于PHP开发者来说,一旦某个产品投入使用,应该立即将 display_errors选项关闭,以免因为这些错误所透露的路径、数据库连接、数据表等信息而遭到黑客攻击。但是,任何一个产品在投入使用后,都难 免会有错误出现,那么如何记录一些对开发者有用的错误报告呢?我们可以在单独的文本文件中将错误报告作为日志记录。错误日志的记录,可以帮助开发人员或者 管理人员查看系统是否存在问题。 如果需要将程序中的错误
2016-05-27 17:33:41 3339
转载 Redis 哈希(Hash)
Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象。 Redis 中每个 hash 可以存储 2的32次方 - 1 键值对(40多亿)。 实例redis 127.0.0.1:6379> hmset w3ckey name "redis tutorial" description "redis basic commands for cac
2016-05-27 14:45:47 623
原创 php表单提交数据的验证处理(防SQL注入和XSS攻击等)
代码实例:<?php$user_name = strim($_REQUEST['user_name']);function strim($str){ //trim() 函数移除字符串两侧的空白字符或其他预定义字符。 //htmlspecialchars() 函数把预定义的字符转换为 HTML 实体。 //预定义的字符是: // & (和号)成为 & //
2016-05-27 13:54:47 7355
转载 redis配置认证密码
redis配置密码1.通过配置文件进行配置 redis配置文件通常在redis.conf中,打开配置文件找到#requirepass foobared去掉行前的注释,并修改密码为所需的密码,保存文件requirepass myredispassword 重启redis 这个时候尝试登录redis,发现可以登上,但是执行具体命令是提示操作不允许redis 127.0.0.1:6379> keys
2016-05-27 13:41:25 805
转载 redis主从模式
Redis的主从复制功能非常强大,一个master可以拥有多个slave,而一个slave又可以拥有多个slave,如此下去,形成了强大的多级服务器集群架构。下面楼主简单的进行一下配置。 1、上面安装好的一个Redis作为master(192.168.0.100),然后使用VirtualBox的虚拟机克隆功能将刚刚那个linux系统克隆一份作为slave,并修改其IP为192.168.0
2016-05-27 11:31:55 1954
原创 redis持久化
redis是一个支持持久化的内存数据库,也就是说redis需要经常将内存中的数据同步到磁盘来保证持久化。redis支持四种持久化方式,一是 Snapshotting(快照)也是默认方式;二是Appendonlyfile(缩写aof)的方式;三是虚拟内存方式;四是diskstore方式。主要用快照持久化和aof持久化,下面分别讲解:(一)Snapshotting(快照持久化)快照是默
2016-05-27 11:09:26 385
转载 php操作redis方法详解
在php里边,redis就是一个功能类,该类中有许多成员方法(名字基本与redis指令的名字一致,参数也一致)。实例:<?php $redis = new Redis(); //连接本地的 Redis 服务 $redis->connect('127.0.0.1', 6379); //选择redis数据库 $redis->select(1); //设置
2016-05-26 16:52:13 17502
转载 PHP安装redis扩展
安装开始在 PHP 中使用 Redis 前, 我们需要确保已经安装了 redis 服务及 PHP redis 驱动,且你的机器上能正常使用 PHP。 接下来让我们安装 PHP redis 驱动:下载地址为:https://github.com/phpredis/phpredis/releases。PHP安装redis扩展以下操作需要在下载的 phpredis 目录中完成:
2016-05-26 15:34:21 708
转载 Linux(Centos)下Redis开机自启设置
1、设置redis.conf中daemonize为yes,确保守护进程开启。2、编写开机自启动脚本vi /etc/init.d/redis脚本内容如下:# chkconfig: 2345 10 90 # description: Start and Stop redis PATH=/usr/local/bin:/sbin:/usr/bin:/bi
2016-05-26 14:51:46 4961 4
原创 php函数中获取参数信息方法
1、func_num_args() 返回传递给该函数参数的个数 <?phpfunction foo(){ $numargs = func_num_args(); echo $numargs; //输出3}foo(1, 2, 3); ?>2、func_get_arg(int $arg_num) 取得指定位置的参数值,$arg_num位置index从0开始
2016-05-24 23:02:44 11799 1
转载 Redis 有序集合(sorted set)
Redis 有序集合(sorted set)Redis 有序集合和集合一样也是string类型元素的集合,且不允许重复的成员。不同的是每个元素都会关联一个double类型的分数。redis正是通过分数来为集合中的成员进行从小到大的排序。有序集合的成员是唯一的,但分数(score)却可以重复。集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。 集合中最
2016-05-24 16:08:51 10077 1
转载 Redis 集合(Set)
Redis 集合(Set)Redis的Set是string类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。Redis 中 集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是O(1)。集合中最大的成员数为 232 - 1 (4294967295, 每个集合可存储40多亿个成员)。实例redis 127.0.0.1:6379> SADD
2016-05-23 16:18:43 1079
转载 Redis 列表(List)
Redis 列表(List)Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素导列表的头部(左边)或者尾部(右边)一个列表最多可以包含 232 - 1 个元素 (4294967295, 每个列表超过40亿个元素)。实例redis 127.0.0.1:6379> LPUSH w3ckey redis(integer) 1redis 127.0.0.
2016-05-23 14:57:16 537
转载 PHP获取字符串长度之strlen和mb_strlen的区别
在PHP中,strlen与mb_strlen是求字符串长度的函数,但是对于一些初学者来说,如果不看手册,也许不太清楚其中的区别。下面通过例子,讲解这两者之间的区别。先看例子://测试时文件的编码方式要是UTF8 $str='中文a字1符'; echo strlen($str).'';//14 echo mb_strlen($str,'utf8').'';//6 echo m
2016-05-13 14:10:01 25975
转载 JS操作CSS随机改变网页背景实现思路
JS和CSS让页面每次刷新随机产生一张背景图,当然我的回答是可以的,下面是具体的实现思路,感兴趣的朋友可以参考下今天有个朋友在weibo上问我可不可以用JS和CSS让页面每次刷新随机产生一张背景图,当然我的回答是可以的。具体可以这样做: 1、用JS定义一个图片数组,里面存放你想要随机展示的图片 代码如下:var imgArr=["http://www.google
2016-05-12 22:32:19 2811
原创 php CURL 发送请求详解
cURL可以使用URL的语法模拟浏览器来传输数据,因为它是模拟浏览器,因此它同样支持多种协议,FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以及 LDAP等协议都可以很好的支持,包括一些:HTTPS认证,HTTP POST方法,HTTP PUT方法,FTP上传,keyberos认证,HTTP上传,代理服务器,cookies,用户名/密码认证,
2016-05-12 16:34:11 14648
原创 php return用法
php return用法:基本用法:a)、return expression // 返回一个表达式结果b)、return(expr) // 函数表达式(只有表达式时加括号)c)、return // 直接返回,或返回空值注意:最好不要用return($val)这种方式。1、return()是语言结构而不是函数,仅在参数包含表达式时才需要用括号将其括起来。当返回一个变量时通常不
2016-05-10 15:50:46 7137
转载 PHP 快速实现数组去重
概述使用PHP的array_unique()函数允许你传递一个数组,然后移除重复的值,返回一个拥有唯一值的数组。这个函数大多数情况下都能工作得很好。但是,如果你尝试在一个大的数组里使用array_unique()函数,它会运行地慢一些。有一个比较好而且更快的函数array_flip()来替代使用array_unique()函数来创建唯一的数组。这个魔法般的函
2016-05-09 23:45:52 4563
原创 PHP文件处理类 SplFileObject 和 SplFileInfo
文件处理类:SplFileInfo {/* 方法 */public __construct ( string $file_name )public int getATime ( void )public string getBasename ([ string $suffix ] )public int getCTime ( void ) //返回文章最后一次变更的时间
2016-05-09 18:54:35 8690
原创 pv/uv/vv/独立ip介绍
PV:浏览次数,用户每打开1个网站页面,记录1个PV。用户多次打开同一页面PV累计多次。用以衡量网站用户访问的网页数量。UV:独立访客数,指1天内访问某站点的人数,以cookie为依据。1天内同一访客的多次访问只计为1个访客;VV:即Visit View,访客的访问次数,用以记录所有访客1天内访问了多少次您的网站。当访客完成所有浏览并最终关掉该网站的所有页面时便完成了一次访
2016-05-05 23:22:50 531
jquery.min.js
2015-05-04
php 位移运算时 符号位会变吗?
2015-05-05
TA创建的收藏夹 TA关注的收藏夹
TA关注的人