随笔分类 -  php

php下ajax的文件切割上传
摘要:html5中的File对象继承Blob二进制对象,Blob提供了一个slice函数,可以用来切割文件数据。 <!DOCTYPE HTML> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <title></title> </head> <body> 阅读全文
posted @ 2017-01-17 20:08 怀素真 阅读(140) 评论(0) 推荐(0) 编辑
php 使用html5 XHR2 上传文件 进度显示
摘要:思路:只要我们知道上传文件的总大小,还有上传过程中上传文件的大小,那么就可以实现进度显示了。 在html5中,XMLHttpRequest对象,传送数据的时候,progress事件用来返回进度信息。 它分成上传和下载两种情况 1.下载的progress事件属于XMLHttpRequest对象 2.上 阅读全文
posted @ 2017-01-17 20:08 怀素真 阅读(549) 评论(0) 推荐(0) 编辑
php iframe 上传文件
摘要:我们通过动态的创建iframe,修改form的target,来实现无跳转的文件上传。 具体的实现步骤 1.捕捉表单提交事件 2.创建一个iframe 3.修改表单的target,指向iframe 4.删除iframe file.html代码如下: <!DOCTYPE HTML> <html lang 阅读全文
posted @ 2017-01-17 20:08 怀素真 阅读(152) 评论(0) 推荐(0) 编辑
linux 下 php 安装 Gearman
摘要:Gearman是一个分发任务的程序框架,它会对作业进行排队自动分配到一系列机器上。gearman跨语言跨平台,很方便的实现异步后台任务。 一个Gearman请求的处理过程涉及三个角色: Client -> Job Server -> Worker Client:请求的发起者。 Job Server: 阅读全文
posted @ 2017-01-17 20:08 怀素真 阅读(368) 评论(0) 推荐(0) 编辑
linux 下 php 安装 pthreads
摘要:1、下载pthreads的源码包 https://pecl.php.net/package/pthreads 如:pthreads-3.1.6.tgz 2、解压 > tar zxvf pthreads-3.1.6.tgz > cd pthreads-3.1.6 3、通过phpize命令生成configure > /data/nmp/php/bin/phpize 4、生成好后,运行conf... 阅读全文
posted @ 2017-01-17 20:08 怀素真 阅读(1282) 评论(0) 推荐(0) 编辑
linux 下 php 安装 event
摘要:1、下载event源码包 https://pecl.php.net/package/event 如:event-2.0.4.tgz 2、解压 > tar zxvf event-2.0.4.tgz > cd event-2.0.4 3、通过phpize命令生成configure > /data/nmp/php/bin/phpize (*如上路径只作演示,具体视安装环境而定。) 4、生成好后,... 阅读全文
posted @ 2017-01-17 20:08 怀素真 阅读(289) 评论(0) 推荐(0) 编辑
linux 下 php 安装 libevent
摘要:一、安装libevent库 1、到libevent官网下载安装源码 http://libevent.org/ 如:libevent-2.0.22-stable.tar.gz 2、解压源码包 > tar zxvf libevent-2.0.22-stable.tar.gz > cd libevent-2.0.22-stable 3、configure > ./configure --pref... 阅读全文
posted @ 2017-01-17 20:08 怀素真 阅读(203) 评论(0) 推荐(0) 编辑
php libevent 详解与使用
摘要:libevent是一个基于事件驱动的高性能网络库。支持多种 I/O 多路复用技术, epoll、 poll、 dev/poll、 select 和 kqueue 等;支持 I/O,定时器和信号等事件;注册事件优先级。 常量如下: 值常量名含义 1 EV_TIMEOUT 超过时间后事件成为激活状态 2 阅读全文
posted @ 2017-01-17 20:07 怀素真 阅读(931) 评论(0) 推荐(1) 编辑
php Pthread 多线程 (六) Pool类 线程池
摘要:Pool对象是多个Worker对象的容器,同时也是它们的控制器,对Worker功能更高抽象。 比如Worker是河,而线程是运行在河里的船。Pool则是管理着多条河。 <?php //继承Collectable垃圾收集类,好让Pool::collect进行收集 class Sql extends C 阅读全文
posted @ 2017-01-17 20:07 怀素真 阅读(3884) 评论(0) 推荐(0) 编辑
php Pthread 多线程 (五) 线程同步
摘要:有些时候我们不希望线程调用start()后就立刻执行,在处理完我们的业务逻辑后在需要的时候让线程执行。 <?php class Sync extends Thread { private $name = ''; public function __construct($name) { $this-> 阅读全文
posted @ 2017-01-17 20:07 怀素真 阅读(628) 评论(0) 推荐(0) 编辑
php Pthread 多线程 (四) 共享内存
摘要:有些时候我们希望在多个线程中共享一些需要的数据,我们可以使用shmop扩展。 <?php class Count extends Thread { private $name = ''; public function __construct($name) { $this->name = $name 阅读全文
posted @ 2017-01-17 20:07 怀素真 阅读(975) 评论(0) 推荐(0) 编辑
php Pthread 多线程 (三) Mutex 互斥量
摘要:当我们用多线程操作同一个资源时,在同一时间内只能有一个线程能够对资源进行操作,这时就需要用到互斥量了。比如我们对同一个文件进行读写操作时。 <?php class Add extends Thread { private $name = ''; private $res = null; privat 阅读全文
posted @ 2017-01-17 20:07 怀素真 阅读(1513) 评论(0) 推荐(0) 编辑
php Pthread 多线程 (二) Worker和Threaded
摘要:<?php //Worker是具有持久化上下文(执行环境)的线程对象 //Worker对象start()后,会执行run()方法,run()方法执行完毕,线程也不会消亡 class MySqlWorker extends Worker { private $name = ''; private $d 阅读全文
posted @ 2017-01-17 20:07 怀素真 阅读(2893) 评论(4) 推荐(1) 编辑
php socket 编程(一)
摘要:socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,可以用来实现不同虚拟机或不同计算机之间的通信。在Internet上的主机一般运行了多个服务软件,同时提供几种服务。每种服务都打开一个socket,并绑定到一个端口上,不同的端口对应于不同的服务。 服务端的流程如下: 1、初 阅读全文
posted @ 2017-01-17 20:07 怀素真 阅读(134) 评论(0) 推荐(0) 编辑
php5.3 php-fpm 开启 关闭 重启
摘要:自php5.3开始,php源码中包含了php-fpm,不需要单独通过补丁的方式安装php-fpm,在源码安装的时候直接 configure 中增加参数 –enable-fpm 即可。 所以启动、关闭和重新加载的方式和以前不同,需要使用信号控制: php-fpm master 进程可以理解一下信号: 阅读全文
posted @ 2017-01-17 20:07 怀素真 阅读(325) 评论(0) 推荐(0) 编辑
php 中的信号处理
摘要:首先我们需要了解几个函数 pcntl_signal 安装信号处理器,也就是当指定信号发生时,调用函数。 pcntl_alarm 指定秒数后向进程发送SIGALRM信号。 posix_getpid 返回当前进程id posix_kill 给指定进程发送信号 一些常用的信号说明 SIGHUP 本信号在用 阅读全文
posted @ 2017-01-17 20:07 怀素真 阅读(630) 评论(0) 推荐(0) 编辑
php多进程中的阻塞与非阻塞
摘要:我们通过pcntl_fork来创建子进程,使用pcntl_wait和pcntl_waitpid来回收子进程。 子进程退出后,父进程没有及时回收,就会产生僵尸进程。 例1: <?php define('FORK_NUMS', 5); $pids = array(); //我们创建5个子进程 for($ 阅读全文
posted @ 2017-01-17 20:07 怀素真 阅读(1154) 评论(1) 推荐(1) 编辑
php 函数中静态变量的问题
摘要:<?php function msg() { static $a = 0; echo $a++, '<br />'; } msg(); msg(); msg(); 上述代码,分别输出0,1,2 静态变量$a在第一次定义并初始化后就会常驻内存,直到脚本执行完毕。 当第二次调用msg()函数时,这时的$ 阅读全文
posted @ 2017-01-17 20:07 怀素真 阅读(254) 评论(0) 推荐(0) 编辑
php 账号不能同时登陆,当其它地方登陆时,当前账号失效
摘要:解决的思路是每当用户登陆时我们必需记录当前的用户id和session_id,如果有人在其它地方用此账号登陆时,我们把此用户id对应的session_id的session文件删除,并重新记录当前的session_id。那么之前的用户就失效了。 login.php代码如下: <?php session_ 阅读全文
posted @ 2017-01-17 20:07 怀素真 阅读(291) 评论(0) 推荐(0) 编辑
centos6.6 下 安装 php7 按 nginx方式
摘要:1、安装必要的依赖库 > yum -y install gd zlib libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel openssl openssl-devel curl 阅读全文
posted @ 2017-01-17 20:07 怀素真 阅读(238) 评论(0) 推荐(0) 编辑