Welcome 微信登录

首页 / 网页编程 / PHP

PHP爬虫之百万级别知乎用户数据爬取与分析

PHP爬虫之百万级别知乎用户数据爬取与分析

这次抓取了110万的用户数据,数据分析结果如下:开发前的准备安装Linux系统(Ubuntu14.04),在VMWare虚拟机下安装一个Ubuntu;安装PHP5.6或以上版本;安装MySQL5.5或以上版本;安装curl、pcntl扩展。使用PHP的curl扩展抓取页面数据PHP的curl扩展是PHP支持的允许你与各种服务器使用各种类型的协议进行连接和通信的库。本程序是抓取知乎的用户数据,要能访问用户个人页面,需要用户登录后的才能访问。当我们在浏览器的页...
php中namespace use用法实例分析

php中namespace use用法实例分析

本文实例讲述了php中namespace use用法。分享给大家供大家参考,具体如下:现在说这个感觉有点过时了,但是感觉用namespace的人还是不多,估计还是因为不习惯吧。class把一个一个function组织起来,namespace可以理解成把一个一个class,function等有序的组织起来。个人觉得,namespace的主要优势有第一,可以更好的管理代码第二,文件一多,可以避免class,function的重名第三,代码可读性增强了1. 定义...
高质量PHP代码的50个实用技巧必备(上)

高质量PHP代码的50个实用技巧必备(上)

50个高质量PHP代码的实用技巧,希望大家喜欢。1.不要使用相对路径 常常会看到: require_once("../../lib/some_class.php");该方法有很多缺点: 它首先查找指定的php包含路径, 然后查找当前目录。因此会检查过多路径。如果该脚本被另一目录的脚本包含, 它的基本目录变成了另一脚本所在的目录.另一问题, 当定时任务运行该脚本, 它的上级目录可能就不是工作目录了。因此最佳选择是使用绝对路径:view sourceprint...
php实现word转html的方法

php实现word转html的方法

本文实例讲述了php实现word转html的方法。分享给大家供大家参考,具体如下:要想完美解决,office转pdf或者html,最好还是用windows office软件,libreoffice不能完美转换,wps没有api。先确认com模块是不是开启,phpinfo里面如果有com_dotnet模块,说明已开启,如果没有,修改php.ini,复制代码 代码如下:com.allow_dcom = true前面的注释去掉,重启就OK了,php官方网站说,p...
php session的锁和并发

php session的锁和并发

本文分享PHP的session在使用过程中的锁和并发的问题,与之相关的现象有请求阻塞、session数据丢失、session数据读不到。我登录不了了某天,我准备登录我们一个后台系统,前去解决一个bug,在账户密码验证码都准确输入的情况下,我登录不上,经过多次实验发现主要有两个错误信息:csrf验证失败验证码错误【我对码神起誓我用半角输入了我看到的验证码,且顺序一致,无多加字符】我们的系统我们的系统是基于phalcon 2.0.8 开发的,如你所见,我们在表...
php使用timthumb生成缩略图的方法

php使用timthumb生成缩略图的方法

本文实例讲述了php使用timthumb生成缩略图的方法。分享给大家供大家参考,具体如下:生成缩列图有二种方式:一、提前生成好,供调用缩列图常规做法是,开始根据网站中的图片规格,要生成多少种缩列图,图片上传过程中就会生成缩列,供不同需求去调用。像这种方法有一点不好就是,如果增加图片规格以后,以前上传的图片没有该规格的,还要重新生成。二、调用的时候在生成缩列图。这也是我写这篇文章原因。推荐一个timthumb,个人觉得在不考虑性能,效率的情况下,这个东西,绝...
详解PHP对象的串行化与反串行化

详解PHP对象的串行化与反串行化

什么时候使用串行化?在网络中传输对象的时候 向数据库中保存文件的时候今天我们要提到四个函数全部串行化1.serialize(对象名) 将指定的类对象串行化 $str=serialize($per) //将per对象串行化,结果返回给$str2.unserialize(串行化后的返回值) 返回结果是对象 $per=unserialize($str);局部串行化3.__sleep() 串行化某对象的部分属性。4.__wakeup()反串行化时,初始化(其实是修...
PHP验证码生成原理和实现

PHP验证码生成原理和实现

验证码在表单实现越来越多了,但是用js的写的验证码,总觉得不方便,所以学习了下php实现的验证码。好吧,其实是没有事情干,但是又不想浪费时间,所以学习了下php实现验证码。正所谓,技多不压身。而且,也可以封装成一个函数,以后使用的时候也是很方便的,当然现在未封装。先给大家附上一张效果图:由于注册的时候常常会用到注册码来防止机器恶意注册,这里我发表一个产生png图片验证码的基本图像,很简陋但思想很清晰:1、产生一张png的图片2、为图片设置背景色3、设置字体...
详解js异步文件加载器

详解js异步文件加载器

我们经常会遇到这种场景,某些页面依赖第三方的插件,而这些插件比较大,不适合打包到页面的主js里(假设我们使用的是cmd的方式,js会打包成一个文件),那么这个时候我们通常会异步获取这些插件文件,并在下载完成后完成初始化的逻辑。以图片上传为例,我们可能会用到plupload.js这个插件,那么我们会这么写:!window.plupload ?$.getScript( "/assets/plupload/plupload.full.min.js", f...
php代码架构的八点注意事项

php代码架构的八点注意事项

本文总结讲述了php代码架构的八点注意事项。分享给大家供大家参考,具体如下:写代码写了6年多了,看看以前的架构,看看现在的架构。都有一些不足的地方。不管怎么样,都一直在改进。说实话不太喜欢用框架这类东西,基本上所有的框架都大同小异,差不了多少,要用话的,你还要去了解思想,目录结构,文件调用,文件命名,代码规范等,挺浪费时间的。构架能满足很大一部分的要求,满足的人越多性能越差,这也是我不喜欢用架构的一个主要原因。下面说一下,代码架构方面的一些心德。一、面向对...
php结合md5实现的加密解密方法

php结合md5实现的加密解密方法

本文实例讲述了php结合md5实现的加密解密方法。分享给大家供大家参考,具体如下:最近在整理代码发现了一个不错的东西,结合md5的加解密算法。网上关于php结合md5的加密,解密算法比较少的,其实php手册里面就有,改一改就行了。在此贴一下,用这算法要加载一个php模块mcrypt,不然用不了。//加密function string2secret($str){ $key = "123"; $td = mcrypt_module_open(MCRYPT_DE...
win7安装php框架Yii的方法

win7安装php框架Yii的方法

本文讲述了win7安装php框架Yii的方法。分享给大家供大家参考,具体如下:有人问我win7安装yii老是报错,花了10分钟装了一下,现在做程序的自学能力这么差了?我对框架这些东西不是很感冒,框架这类东西,个人觉得效率都不咋地,集成的东西多,并且有很多我们并不需要。如果自己没有开发过框架的话,用框架还是有些好处的,可以规范代码。1、下载yiihttp://www.yiiframework.com/download/2、使用yiic来生成web目录C:Wi...
crontab无法执行php的解决方法

crontab无法执行php的解决方法

本文分析了crontab无法执行php的解决方法。分享给大家供大家参考,具体如下:用crontab跑php程序时,如何去调试,各人有各人的方法。我也有套方法,看一下,我是如何解决crontab执行不了php程序这个问题的。一、php文件有没有执行权限复制代码 代码如下:[root@linux cron]# ls -al |grep del-rwxr-xr-x 1 zwh ftpgroup 494 10-20 16:42 del_redis.php 如果没有...
基于命令行执行带参数的php脚本并取得参数的方法

基于命令行执行带参数的php脚本并取得参数的方法

本文分析了基于命令行执行带参数的php脚本并取得参数的方法。分享给大家供大家参考,具体如下:一、为什么我们要在命令行下运行php脚本呢?个人理解,主要有二个原因:1. 利用crontab去跑php,可以给服务器减压,当然在这里有一个条件,就是实时性要求不高。比如:sns中的好友动态,这个实时要求不高,但是数据量比较大,这个时候定时跑的话,会给web服务器,数据库服务器分担不小的压力。2. 就是我们要定时去完成某一事情,比如:我要删除一个月前,用户留言,这个...
PHP设置头信息及取得返回头信息的方法

PHP设置头信息及取得返回头信息的方法

本文实例讲述了PHP设置头信息及取得返回头信息的方法。分享给大家供大家参考,具体如下:设置请求的头信息,我们可以用header函数,可以用fsockopen,可以用curl等,本文主要讲的是用curl来设置头信息,并取得返回后的头信息。一、请求方设置自己的头信息,header.php<?phpfunction FormatHeader($url, $myIp = null,$xml = null){ // 解悉url $temp = pars...
<< 581 582 583 584 585 586 587 588 589 590 >>