PHP
文章平均质量分 68
zifengshaoyu6
这个作者很懒,什么都没留下…
展开
-
正则匹配问题
昨天被一个正则难倒了两个小时,发现发现知识点一不用就会很快忘记。 使用场景:很多电商平台,经常把商品详情以HTML的形式存入到数据库字段中,然后无论做APP接口还是别的应用,取出来就拿去用比较方便,但是如果详情页需要变动,需要维护的商品详情页就会有很大的工作量,比如今年3.15过后,电商要求电子商务的商品需要在商品详情页加上价格说明图片在商品详情页,所以我是打算用正则来做这一部分...2017-03-22 15:31:37 · 119 阅读 · 0 评论 -
php中引用&的真正理解-变量引用、函数引用、对象引用
php的引用(就是在变量或者函数、对象等前面加上&符号) //最重要就是 删除引用的变量 ,只是引用的变量访问不了,但是内容并没有销毁 在PHP 中引用的意思是:不同的名字访问同一个变量内容.<?php $a="ABC"; $b =&$a; echo $a;//这里输出:ABC echo $b;//这里输...2017-04-07 13:41:59 · 143 阅读 · 0 评论 -
本地clone GitHub上的项目报错 Recv failure: Connection reset by peer
百度查到是 最近在使用curl中遇到CURL ERROR: Recv failure: Connection reset by peer的报错提示,现把解决方法与大家共享,希望对大家有所帮助。我们经常用curl来访问web站点,web站点目前主要分为http和https两种协议,众所周知https类型的网站都是通过ssl协议+http协议的,是目前最安全的网站协议,访问此类...2017-04-11 13:34:48 · 2441 阅读 · 0 评论 -
php 缓存技术
[导读] 1、全页面静态化缓存也就是将页面全部生成html静态页面,用户访问时直接访问的静态页面,而不会去走php服务器解析的流程。此种方式,在CMS系统中比较常见,比如dedecms;一种比较常用的实现方式是用输出缓存:Ob1、全页面静态化缓存也就是将页面全部生成html静态页面,用户访问时直接访问的静态页面,而不会去走php服务器解析的流程。此种方式,在CMS系统中比较常...原创 2017-01-05 14:38:41 · 125 阅读 · 0 评论 -
php 队列
什么是队列,是先进先出的线性表,在具体应用中通常用链表或者数组来实现,队列只允许在后端进行插入操作,在前端进行删除操作。什么情况下会用了队列呢,并发请求又要保证事务的完整性的时候就会用到队列,当然不排除使用其它更好的方法,知道的不仿说说看。队列还可以用于减轻数据库服务器压力,我们可以将不是即时数据放入到队列中,在数据库空闲的时候或者间隔一段时间后执行。比如访问计数器,没有必要即时的执行访...原创 2017-01-05 14:40:14 · 85 阅读 · 0 评论 -
80端口被占用 处理方法
如果端口被占用 以80端口为例 打开windows下的DOS工具,进入DOS窗口,接下来分别运行以下命令: netstat -aon | findstr "80"tasklist | findstr "1688"taskkill /pid 1688 /F Proto Local Address Foreign Address ...原创 2017-01-05 15:00:13 · 205 阅读 · 0 评论 -
Linux 下 php扩展安装(如果直接install不起作用的话)
1.Compile Error 服务器编译问题 重启php服务 2. php扩展安装 gd 库当执行完apt-get 命令后 gd.so 会出现在 /usr/lib/php/20151012 目录下 a. 需要在/etc/php/7.0/mods-available目录下 创建 gd.inib. 在/etc/php/7.0/fpm/conf.d/ /etc/php/7....原创 2017-01-06 10:04:35 · 252 阅读 · 0 评论 -
微信扫一扫 调用 以及手机端前进后退的数据加载
wx.ready(function() { $('#to_rule').click(function() { var url = '{{ path('front_rule_wanggeyuan') }}'; {% if msg is defined %} location.replace...原创 2017-01-07 09:13:03 · 291 阅读 · 0 评论 -
简单的概率问题 设置
//修改此处请修改getPrize 中默认数据 $con = [ ['typeId' => 1, 'price' => 50], ['typeId' => 1, 'price' => 120], ['typeId' => 4, 'price' =>...原创 2017-01-07 09:16:19 · 159 阅读 · 0 评论 -
PHP curl_setopt函数用法介绍
url_setopt函数是php中一个重要的函数,它可以模仿用户的一些行为,如模仿用户登录,注册等等一些用户可操作的行为哦。 bool curl_setopt (int ch, string option, mixed value)curl_setopt()函数将为一个CURL会话设置选项。option参数是你想要的设置,value是这个选项给定的值伪造登录主站wap登录和...原创 2017-01-09 09:20:46 · 227 阅读 · 0 评论 -
ecos框架目录结构
文件/目录名作用index.phpweb访问入口文件.htaccessapache支持的目录配置文件, 作用是让Ecos支持url rewrite, 可参考Apache重写指南licence.txtShopEx的软件授权协议readme.txtEcos简要说明app系统里的所有app都在放置在这个目录下, 每个app单独目录存放...原创 2017-01-09 17:25:31 · 495 阅读 · 0 评论 -
Desktop 开发指南
desktop开发指南desktop简介desktop是基于base的一个独立的app。通俗的讲desktop就是后台管理系统。desktop还有以下特点:desktop提供了常用的后台操作实现机制,这大大节省了你后台开发的时间。desktop提供一个带有权限和工作流的操作环境。desktop作为ecos的一个基础app一般不单独存在,是其他app操作流程的载体。...原创 2017-01-09 17:28:38 · 743 阅读 · 0 评论 -
Ecos 数据库操作
数据库操作类base_db_connections(强烈不建议直接调用)对于数据库的操作, 建议通过model进行处理,.在model的基类中对于数据库的操作会通过dbschema定义文件对操作的信息进行校验并作相关的转义. 如果有特殊需求无法通过model进行处理, 应用本类时请慎重.本类不允许直接调用, 调用方式可见base_db_model数据库集群支持本类支持mysq...原创 2017-01-09 17:34:35 · 440 阅读 · 0 评论 -
PHP加密基础
md5加密md5 计算字符串的散列值 属于单向加密md5(str,true/null);如果第二个参数设置为true,那么md5报文摘要将以16字节长度的原始二进制格式返回,否则以32位16进制形式返回散列值注:所谓的md5解密网站实质是把常用的加密串存入到数据库,然后去对比然后显示加密之前的值。 可以md5加密两次,md5(md5($str,true)),这样网...2017-03-06 11:20:36 · 107 阅读 · 0 评论 -
微信红包发送问题
微信红包发送准备条件公众号支持发送红包功能每次发送红包不能低于1元公众号支付证书下载获取到要发送红包的微信的openID/金额 $url = 'https://api.mch.weixin.qq.com/mmpaymkttransfers/sendredpack'; $body = [ 'non...2017-03-14 10:45:31 · 186 阅读 · 0 评论 -
Linux 增加PHP扩展gd库
Compile Error 服务器编译问题 重启php服务php扩展安装 gd 库当执行完apt-get 命令后 gd.so 会出现在 /usr/lib/php/20151012 目录下a. 需要在/etc/php/7.0/mods-available目录下 创建 gd.inib. 在/etc/php/7.0/fpm/conf.d/ /etc/php/7.0/cli/...2017-03-14 11:11:31 · 258 阅读 · 0 评论 -
Ubuntu 开发软件集合
Ubuntu 系统下的开发软件远程服务器链接软件SecureCRTa. 将百度网盘:https://pan.baidu.com/disk/home#list/vmode=list&path=%2FUbuntu%E8%BD%AF%E4%BB%B6 scrt.zip 下载到本地b. 进入目录双击 安装完成后 搜索secureCRT ...2017-03-15 11:12:13 · 265 阅读 · 0 评论 -
【科普】WebSocket
作者:Ovear链接:https://www.zhihu.com/question/20215561/answer/40316953来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 WebSocket是HTML5出的东西(协议),也就是说HTTP协议没有变化,或者说没关系,但HTTP是不支持持久连接的(长连接,循环连接的不算)首先HTTP有1.1和1...2017-04-07 10:40:51 · 124 阅读 · 0 评论 -
Redis和Memcache对比及选择
http://www.cnblogs.com/EE-NovRain/p/3268476.html 我这段时间在用Redis,感觉挺方便的,但比较疑惑在选择内存数据库的时候到底什么时候选择redis,什么时候选择memcache,然后就查到下面对应的资料,是来自redis作者的说法(stackoverflow上面)。 You should not care too much ab...2017-04-07 09:55:57 · 108 阅读 · 0 评论 -
【面试题】写一个函数,能够遍历一个文件夹下的所有文件和子文件夹
重点:考察对dir目录的函数的认知!方案1: function my_dir($dir){ $files=array(); if(@$handle=opendir($dir)){//注意这里要加一个@,不然会有warning错误提示:) while(($file=readdir($handle))!==false){ if(...2017-03-24 17:26:42 · 911 阅读 · 0 评论 -
【面试题】php.ini中safe_mode开启对PHP系统函数的影响
主旨:开启之后,主要会对系统操作、文件、权限设置等方法产生影响,平常项目基本上也用不到这些方法。主要我想还是用来应对webshell吧,减少被人植入webshell所带来的某些安全问题。 影响系统操作的函数: 如果需要执行操作系统的程序时,必须在safe_mode_exec_dir中指定程序的路径,否则执行将失败。exec() 只能在 safe...2017-03-25 15:28:39 · 199 阅读 · 0 评论 -
【面试题】PHP常见的魔术方法以及用法
主旨:PHP中的魔术方法总结 __construct, __destruct , __call, __callStatic, __get, __set, __isset, __unset , __sleep, __wakeup, __toString, __set_state, __clone and __autoload__construct __cons...2017-03-25 16:04:42 · 206 阅读 · 0 评论 -
【面试题】php 垃圾收集机制
每一种语言都有自己的自动垃圾回收机制,让程序员不必过分关心程序内存分配,但是在OOP中,有些对象需要显式的销毁;防止程序执行内存溢出。PHP 垃圾回收机制(Garbage Collector 简称GC)在PHP中,没有任何变量指向这个对象时,这个对象就成为垃圾。PHP会将其在内存中销毁;这是PHP 的GC垃圾处理机制,防止内存溢出。当一个 PHP线程结束时,当前占用的所有内...2017-03-27 09:34:35 · 1337 阅读 · 0 评论 -
【面试题】请写一段 PHP 代码 ,确保多个进程同时写入同一个文件成功
考点:对函数的理解 fopen :打开文件或者URL参数1:文件地址或者URL参数2:mode 参数指定了所要求到该流的访问类型 'r' 只读方式打开,将文件指针指向文件头。 'r+' 读写方式打开,将文件指针指向文件头。 'w' 写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。 'w+' 读写方式打开,将文...2017-03-27 10:36:34 · 387 阅读 · 0 评论 -
【面试题】使对象可以像数组一样进行foreach循环,要求属性必须是私有
主旨:PHP5提供了一种迭代(iteration)对象的功能,就像使用数组那样,可以通过foreach 来遍历对象中的属性。默认情况下,在外部迭代只能得到外部可见的属性的值,可在内部迭代自己的外部迭代器或类的接口。Iterator extends Traversable { /* 方法 */ abstract public mixed current ( void...2017-03-27 13:22:40 · 589 阅读 · 0 评论 -
【面试题】用php实现一个双向队列
主旨:主要是考数组的函数 array_pop array_push array_pop array_pop() 函数删除数组中的最后一个元素。删除尾部一array_push array_push() 函数向第一个参数的数组尾部添加一个或多个元素(入栈),然后返回新数组的长度。该函数等于多次调用 $array[] = $value。 尾部塞入一 a...2017-03-27 13:53:28 · 194 阅读 · 0 评论 -
【面试题】cookie、session的联系和区别,多台web服务器如何共享session?
cookie在客户端保存状态,session在服务器端保存状态。但是由于在服务器端保存状态的时候,在客户端也需要一个标识,所以session也可能要借助cookie来实现保存标识位的作用。cookie包括名字,值,域,路径,过期时间。路径和域构成cookie的作用范围。cookie如果不设置过期时间,则这个cookie在浏览器进程 存在时有效,关闭时销毁。如果设置了过期时间,则cookie存储在...2017-03-27 14:12:22 · 250 阅读 · 0 评论 -
阿里云安装PHP以及扩展脚本
1、安装php,nginx服务器下安装:#!/bin/bashrm -rf php-5.4.27if [ ! -f php-5.4.27.tar.gz ];then # wget http://test-oracle.oss-cn-hangzhou.aliyuncs.com/php-5.4.27.tar.gz wget http://cn2.php.n...原创 2017-03-28 13:26:13 · 489 阅读 · 0 评论 -
php文件加密类
<?php/** * PHP 文件加密类 二进制加密 * 默认32位加密 * * @author ray<ray_phper@163.com> * @date 2015-06-11 * **/ class PHPFileEncrypt { /** * var $n...原创 2017-03-28 13:30:18 · 174 阅读 · 0 评论 -
【面试题】你用什么方法检查 PHP 脚本的执行效率(通常是脚本执行时间)和数据库 SQL 的效率(通常是数据库 Query 时间), 并定位和分析脚本执行和数据...
一般是在你要检查的代码开头记录一个时间,结尾记录一个时间。取差值但这个时间一般来说都很快,在一秒以内,所以不能直接用mktime(),我给你个我写的函数 function getmicrotime(){ list($usec,$sec) = explode(" ",microtime()); $num = ((float)$usec+(float)$sec); re...原创 2017-03-28 13:30:54 · 390 阅读 · 0 评论 -
Ubuntu下 phpcs 和 composer 全局安装
php-cs 文件格式化下载安装wget https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases/download/v1.11.6/php-cs-fixer.phar -O php-cs-fixerORcurl -L https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases/...2017-03-29 14:21:31 · 315 阅读 · 0 评论 -
Ubuntu 安装 PHP 7,APCu,APCu_bc
安装PHP7.0sudo add-apt-repository ppa:ondrej/phpsudo apt-get updatesudo apt-get install -y php7.0sudo apt-get install php7.0 php7.0-dev php7.0-mysql php7.0-curl php7.0-cli php7.0-common php7...2017-03-29 14:45:00 · 717 阅读 · 0 评论 -
【面试题】include和require 区别
require 和 include 几乎完全一样,除了处理失败的方式不同之外。require 在出错时产生 E_COMPILE_ERROR 级别的错误。换句话说将导致脚本中止而 include 只产生警告(E_WARNING),脚本会继续运行。从手册上明确知道他们之间的唯一区别就是,require出错会中止脚本,那为什么网上还有各种版本的区别,所以必需从源码上来终结。 ...2017-03-31 17:05:04 · 217 阅读 · 0 评论 -
【面试题】char 和 vachar 区别
首先明确的是,char的长度是不可变的,而varchar的长度是可变的,也就是说,定义一个char[10]和varchar[10],如果存进去的是‘csdn’,那么char所占的长度依然为10,除了字符‘csdn’外,后面跟六个空格,而varchar就立马把长度变为4了,取数据的时候,char类型的要用trim()去掉多余的空格,而varchar是不需要的,尽管如此,char的存...2017-03-31 17:08:36 · 341 阅读 · 0 评论 -
PHP 反射API
PHP的反射API,即在PHP运行状态下,通过分析PHP程序,可以导出对象所属的类,方法,属性,参数等信息。反射是在PHP运行状态中,扩展分析PHP程序,导出或提取出关于类、方法、属性、参数等的详细信息,包括注释。这种动态获取的信息以及动态调用对象的方法的功能称为反射API。反射是操纵面向对象范型中元模型的API,其功能十分强大,可帮助我们构建复杂,可扩展的应用。 其用途如:...2017-03-31 17:29:12 · 163 阅读 · 0 评论 -
正则匹配文字
GBK (GB2312/GB18030)x00-xff GBK双字节编码范围x20-x7f ASCIIxa1-xff 中文 gb2312x80-xff 中文 gbk UTF-8 (Unicode)u4e00-u9fa5 (中文)x3130-x318F (韩文xAC00-xD7A3 (韩文)u0800-u4e00 (日文) 字符串中文判断$st...2017-03-15 14:09:58 · 125 阅读 · 0 评论