• php使用redis的有序集合zset实现延迟队列应用示例

    本文实例讲述了php使用redis的有序集合zset实现延迟队列,分享给大家供大家参考,具体如下:延迟队列就是个带延迟功能的消息队列,相对于普通队列,它可以在指定时间消费掉消息。延迟队列的应用场景:1、新用户注册,10分钟后发送邮件或站内信。2、用户下单后,30分钟未支付,订单自动作废。我们通过redis的有序集合zset来实现简单的延迟队列,将消息数据序列化,作为zset的value,把消息处理…
    php高级应用
    2023-06-20566
  • PHP输出缓存ob系列函数详解

    ob,输出缓冲区,是outputbuffering的简称,而不是outputcache。ob用对了,是能对速度有一定的帮助,但是盲目的加上ob函数,只会增加CPU额外的负担。ob的基本原则:如果ob缓存打开,则echo的数据首先放在ob缓存。如果是header信息,直接放在程序缓存。当页面执行到最后,会把ob缓存的数据放到程序缓存,然后依次返回给浏览器。下面我说说ob的基本作用:1)防止在浏览器有…
    php高级应用
    2023-06-20497
  • CI使用Tank Auth转移数据库导致密码用户错误的解决办法

    TankAuth是针对Codeigniter的权限管理类库,功能很强大。但是将数据库转到另一台服务器上,会出现之前的用户名和密码都无法登录的情况。这篇文章主要介绍了CI使用TankAuth转移数据库导致密码用户错误的解决办法,需要的朋友可以参考下TankAuth是针对Codeigniter的权限管理类库,功能很强大。整合了CI之后,有一天将数据库转到另一台服务器上,发现使用之前的用户名和密码都无法…
    php高级应用
    2023-06-20605
  • 微信公众平台消息接口(PHP)-官方的Demo有问题

    微信公众平台消息接口(PHP)-官方的Demo有问题,下面个人进行了处理,事例代码也跑不通,我研究了一番,终于搞定.首先:在你的服务器上上传好一个接口文件,如http://www.phpfensi.com/weixin.php内容如下:<?phpdefine("TOKEN","weixin");define("MESS","输入点啥吧");$wechatObj=newwechatCallba…
    php高级应用
    2023-06-20471
  • PHP利用curl实现get与POST提交数据

    curl实现get提交数据,代码如下://初始化一个cURL对象$curl=curl_init();//设置你需要抓取的URLcurl_setopt($curl,CURLOPT_URL,'http://www.phpfensi.com');//设置header,最后一个参数是0表示返回值不带有header,1表示带有headercurl_setopt($curl,CURLOPT_HEADER,0)…
    php高级应用
    2023-06-20639
  • php curl模块模拟登录后采集页面实例

    在php中curl模块是一个多线程的模块,他可以很方便的实现模拟登录,如post,get都可以,下面我来举一个实例利用curl模块模拟登录后采集页面程序.今天接到的功课是从一个网站获取商品库存,但是这个网站需要登录,我用fsockopen传递了整个header头都没用,只能求助于curl了。附带说一下curl模块的开启办法:(1)从php目录下拷贝:libeay32.dll,ssleay32.dl…
    php高级应用
    2023-06-20694
  • PHP实现代码复用的traits新特性的方法

    在阅读yii2源码的时候接触到了trait,就学习了一下,写下博客记录一下。自PHP5.4.0起,PHP实现了代码复用的一个方法,称为traits。Traits是一种为类似PHP的单继承语言而准备的代码复用机制。Trait为了减少单继承语言的限制,使开发人员能够自由地在不同层次结构内独立的类中复用方法集。Traits和类组合的语义是定义了一种方式来减少复杂性,避免传统多继承和混入类(Mixin)相…
    php高级应用
    2023-06-19420
  • PHP编程之代码命名规范

    文件名:一律小写,单词间以下划线分隔类名:采用首字母大写的驼峰命名方式类中的方法名:采用首字母小写的驼峰方式命名类中的私有方法和私有变量:以下划线开头函数名(变量名):全小写,单词间以下划线分隔下面具体介绍Θ类文件都以.class.php为后缀,使用驼峰法命名,并且首字母大写,例如Pay.class.php;Θ类名和目录_文件名一致。例如:类名Zend_Autoloader的目录是Zend/Aut…
    php高级应用
    2023-06-19492
  • redis访问权限控制,密码设置

    redis作为一个高速数据库,在互联网上,必须有对应的安全机制来进行保护.1.比较安全的办法是采用绑定IP的方式来进行控制,代码如下:bind127.0.0.1表示仅仅允许通过127.0.0.1这个ip地址进行访问,那么其实只有自己才能访问自己了,其他机器都无法访问他,这段命令要去redis.conf里修改,这里请注意,我们常用的启动方式src/redis-server,改为:src/redis-…
    php高级应用
    2023-06-19532
  • PHP操作MongoDB配置与学习笔记

    1,PHP操作MongoDB配置与学习笔记有需要的朋友可参考参考,Mongo主要解决的是海量数据的访问效率问题,根据官方的文档,当数据量达到50GB以上的时候,Mongo的数据库访问速度是MySQL的10倍以上.2,安装(windowsonly)到官网下载对应的包,解压到d:mongodb,创建d:mongodbdata放置数据文件3,运行mongodbd:mongodbbin下有一些可执行文件,…
    php高级应用
    2023-06-19545
  • PHP提交表单失败后如何保留填写的信息

    本文章来给各位同学介绍PHP提交表单失败后如何保留填写的信息一些方法总结,最常用的就是使用缓存方式了,这种方法如果网速慢是可能出问题的,最好的办法就是使用ajax了.1.使用header头设置缓存控制头Cache-control,PHP代码如下:header('Cache-control:private,must-revalidate');//支持页面回跳.2.使用session_cache_li…
    php高级应用
    2023-06-19590
  • PHP中调用SVN命令更新网站方法

    这篇文章主要介绍了PHP中调用SVN命令更新网站方法,本文重点讲解一个小技巧,不使用这个技巧调用SVN命令会导致错误,需要的朋友可以参考下想说写一个通过网页就可以执行SVN升级的程序,结果并不是我想得那样简单,有一些眉角需要注意的说。先以Apache的用户帐号执行SVNcheckout,这样Apache才有SVN的链结权力,才可以通过网页执行SVNupdate代码如下:su-s/bin/bashw…
    php高级应用
    2023-06-19482
  • 深入讲解PHP的Yii框架中的属性(Property)

    在PHP中,类的成员变量也被称为属性(properties)。它们是类定义的一部分,用来表现一个实例的状态(也就是区分类的不同实例)。在具体实践中,常常会想用一个稍微特殊些的方法实现属性的读写。例如,如果有需求每次都要对label属性执行trim操作,就可以用以下代码实现:$object->label=trim($label);上述代码的缺点是只要修改label属性就必须再次调用trim()…
    php高级应用
    2023-06-19490
  • 浅析PHP7的多进程及实例源码

    在本篇内容里小编给大家分享了关于PHP7之多进程的相关概念和实例代码知识点,需要的朋友们跟着学习下。准备我们都知道PHP是单进程执行的,PHP处理多并发主要是依赖服务器或PHP-FPM的多进程及它们进程的复用,但PHP实现多进程也意义重大,尤其是在后台Cli模式下处理大量数据或运行后台DEMON守护进程时,多进程的优势不用多说。PHP的多线程也曾被人提及,但进程内多线程资源共享和分配的问题难以解决…
    php高级应用
    2023-06-18489
  • PHP中简单工厂模式实例讲解

    PHP中简单工厂模式实例讲解,简单的讲述了一下大家可参考一下.简单工厂模式:①抽象基类:类中定义抽象一些方法,用以在子类中实现②继承自抽象基类的子类:实现基类中的抽象方法③工厂类:用以实例化对象采用封装方式,代码如下:<?phpclassCalc{/***计算结果**@paramint|float$num1*@paramint|float$num2*@paramstring$operator…
    php高级应用
    2023-06-18576