随笔分类 -  php

摘要:批量下载文件一般使用循环的方式,逐一执行下载。但在带宽与服务器性能允许的情况下,使用多进程进行下载可以大大提高下载的效率。本文介绍PHP利用curl的多进程请求方法,实现多进程同时下载文件。 原理: 使用curl的批处理方法,开启多进程,实现批量下载文件。 主要方法: curl_multi_init 阅读全文
posted @ 2017-08-24 14:32 /折磨 阅读(3106) 评论(0) 推荐(0)
摘要:HTML5按比例缩略图片并上传的实例 HTML5按比例缩略图片并异步上传的实例 图片: 宽: 高: $img = isset($_POST['img'])? $_POST['img'] : ''; // 获取图片 list($type, $data) = exp... 阅读全文
posted @ 2017-08-24 14:22 /折磨 阅读(1563) 评论(0) 推荐(0)
摘要:HTTP状态码 当浏览者访问一个网页时,浏览者的浏览器会向网页所在服务器发出请求。当浏览器接收并显示网页前,此网页所在的服务器会返回一个包含HTTP状态码的信息头(server header)用以响应浏览器的请求。 HTTP状态码的英文为 HTTP Status Code 下面是常见的HTTP状态码 阅读全文
posted @ 2017-07-20 16:56 /折磨 阅读(109) 评论(0) 推荐(0)
摘要:场景 1 假设按用户id分2个库 每个库分10张表。 分表策略 1.用户id%2 确定库 用户id%3确定表。 2.(用户id%(2*10))/ 10 取整确定库,(用户id%(2*10)%10确定表。 2为最优秀方案连续存储。 tempvar=user_id%(库数量*表数量)库=tempvar/ 阅读全文
posted @ 2017-07-18 18:01 /折磨 阅读(2659) 评论(0) 推荐(0)
摘要:system, exec, passthru, shell_exec 这4个函数可用于执行系统命令。每个的行为都有细微差别,问题在于,当在共享主机中,某些函数可能被选择性的禁用。大多数新手趋于每次首先检查哪个函数可用,然而再使用它。更好的方案是封成函数一个可跨平台的函数 阅读全文
posted @ 2017-07-18 11:08 /折磨 阅读(147) 评论(0) 推荐(0)
摘要:1 //文件缓存类 2 3 class FileCache { 4 private $cacheTime = 3600; //默认缓存时间 秒 5 private $cacheDir = './filecache'; //缓存绝对路径 6 private $md5 = true; //是否对键进行加密 ... 阅读全文
posted @ 2017-06-07 17:06 /折磨 阅读(435) 评论(0) 推荐(0)
摘要:<?php function genTree($items,$id='id',$pid='pid',$son = 'children'){ $tree = array(); $tmpMap = array(); foreach ($items as $item) { $tmpMap[$item[$i 阅读全文
posted @ 2017-05-19 11:29 /折磨 阅读(168) 评论(0) 推荐(0)
摘要:<?php $a = ''; $b = ""; $c = null; $d = array(); $e = ' '; $f = 0; $g = "0"; var_dump( is_null($a)); var_dump( is_null($b)); var... 阅读全文
posted @ 2017-05-19 11:27 /折磨 阅读(177) 评论(0) 推荐(0)
摘要:phpstorm->file->Setting->Directorires 里把 ThinkPHP/Model 目录设置为 Excluded ,保存。 阅读全文
posted @ 2017-04-25 14:32 /折磨 阅读(398) 评论(0) 推荐(0)
摘要:laravel门面类的代码提示方案: https://github.com/barryvdh/laravel-ide-helper 按照步骤安装 1、composer require barryvdh/laravel-ide-helper 2、添加下面这行到config\app.PHP的provid 阅读全文
posted @ 2017-04-18 09:35 /折磨 阅读(9906) 评论(0) 推荐(0)
摘要:不同根域名的跨域 阅读全文
posted @ 2017-04-17 15:57 /折磨 阅读(3092) 评论(0) 推荐(0)
摘要:网上很多资料都有对Apache的access.log按天生成的方法,但在Windows server下稍有不同: 1、打开httpd.conf配置文件找到: CustomLog "logs/access.log" common 2、将其改为: CustomLog "|bin/rotatelogs.e 阅读全文
posted @ 2017-04-14 16:13 /折磨 阅读(4070) 评论(0) 推荐(0)
摘要:1、Redis和Memcache都是将数据存放在内存中,都是内存数据库。不过memcache还可用于缓存其他东西,例如图片、视频等等; 2、Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,hash等数据结构的存储; 3、虚拟内存--Redis当物理内存用完时,可以将一些很久没 阅读全文
posted @ 2017-04-12 16:41 /折磨 阅读(128) 评论(0) 推荐(0)
摘要:Traits可以理解为一组能被不同的类都能调用到的方法集合,但Traits不是类!不能被实例化。先来例子看下语法: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 <?php trait myTrait{ function traitMethod1(){} f 阅读全文
posted @ 2017-04-11 14:17 /折磨 阅读(371) 评论(0) 推荐(0)
摘要:对于命名空间,官方文档已经说得很详细[查看],我在这里做了一下实践和总结。 命名空间一个最明确的目的就是解决重名问题,PHP中不允许两个函数或者类出现相同的名字,否则会产生一个致命的错误。这种情况下只要避免命名重复就可以解决,最常见的一种做法是约定一个前缀。 例:项目中有两个模块:article和m 阅读全文
posted @ 2017-04-11 11:34 /折磨 阅读(515) 评论(0) 推荐(0)
摘要:private function send_request($url) { if (function_exists('curl_exec')) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CUR... 阅读全文
posted @ 2017-04-01 11:15 /折磨 阅读(194) 评论(0) 推荐(0)
摘要:$content = iconv("utf-8","gb2312//IGNORE",$content); //utf-8转gbk $content = iconv("gb2312","utf-8//IGNORE",$content); //gb2312换为utf-8 阅读全文
posted @ 2017-03-30 15:16 /折磨 阅读(9605) 评论(0) 推荐(1)
摘要:需求: 按内容顺序循环分配 排除法定节假日 有点类似排班 原理:没有用数据库 用的txt 默认数据为0 执行程序后 值改为1 作为标识当前内容 获取下标 替换原有内容 在写入文件 阅读全文
posted @ 2017-03-17 15:18 /折磨 阅读(493) 评论(0) 推荐(0)
摘要:function mkdirs($dir) { if(!is_dir($dir)) { if(!mkdirs(dirname($dir))){ return false; } if(!mkdir($dir,0777)){ return false; } } chmod($dir, 777); //给 阅读全文
posted @ 2017-03-15 10:41 /折磨 阅读(639) 评论(0) 推荐(0)
摘要:wkhtmltopdf [OPTIONS]... <input file> [More input files] <output file> 常规选项 --allow <path> 允许加载从指定的文件夹中的文件或文件(可重复) --book* 设置一会打印一本书的时候,通常设置的选项 --coll 阅读全文
posted @ 2017-03-14 16:55 /折磨 阅读(14232) 评论(0) 推荐(0)