PHP
sreio
这个作者很懒,什么都没留下…
展开
-
ajax上传文件
上传按钮: script部分:$("#upload").click(function () { var formData = new FormData(); formData.append("myfile", document.getElementById("file").files[0]);原创 2017-09-21 20:50:20 · 184 阅读 · 0 评论 -
PHP使用header设置浏览器缓存
<?php //定义一个合理缓存时间。合理值屈居于页面本身、访问者的数量和页面的更新频率,此处为3600秒(1小时)。 $cache_time = 60 * 60; $modified_time = @$_SERVER['HTTP_IF_MODIFIED_SINCE']; if( strtotime($modified_time)+$cache_原创 2017-11-09 19:33:49 · 366 阅读 · 0 评论 -
html+ajax上传大文件
大家都知道php上传文件有限制,如果没有修改过php.ini文件的话,默认的上传大小限制为2M,那么该如何上传大文件了,比如说上传一个1G多的大文件,可以使用大文件切割上传的方式来解决。何为大文件切割上传? 原理:利用HTML5的新特性,将文件内容切割成分段的二进制信息,然后每次向服务器上传一段,而服务器,只需要把我们每次上传的二进制信息整合存储到一个文件中,那么最后这个文件就是所上传原创 2017-11-13 11:02:50 · 1821 阅读 · 0 评论 -
PHP双向队列
队列是一种特殊的线性表,特殊之处在于它只允许在表的前端进行删除操作,而在表的后端进行插入操作单向队列:只能从头进,从尾出双向队列:头尾都可以进出<?php/** * Created by PhpStorm. * User: Alemon ° * Date: 2017/12/28 */class Queue{ private $queue=array()原创 2017-12-28 11:15:15 · 273 阅读 · 0 评论 -
PHP获取今天,昨天,本月,上个月,本年 起始时间戳
date_default_timezone_set("Asia/Shanghai"); //设置为上海时间 否则开始时间会相差8个小时 //获取今日开始时间戳和结束时间戳$beginToday=mktime(0,0,0,date('m'),date('d'),date('Y'));$endToday=mktime(0,0,0,date('m'),date('d')+1,date('Y'))-原创 2018-01-03 11:10:40 · 13476 阅读 · 0 评论 -
php网站判断用户是否是手机访问的方法
有些时候,我们需要判断用户是否用手机访问,如果是手机的话,就跳转到指定的手机友好页面。这里就介绍一下,如何判断用户是否用手机访问。自定义的函数如下:$agent = check_wap();if( $agent ){ header('Location: http://www.baidu.com'); exit;} // check if wapfunction c原创 2018-01-29 11:10:02 · 1293 阅读 · 0 评论 -
PHP添加文字图片水印
需要注意几点:1、确保GD库的开启(增加图片水印只确保这一点即可)2、确保msyh.ttf文件存在并引入增加文字水印: /*打开图片*/ //1.配置图片路径 $src = "1.jpg"; $src =$img_path; //2.获取图片信息 $info = getimagesize($src); /...原创 2018-05-17 09:28:36 · 3062 阅读 · 0 评论 -
php实现多继承-trait语法
自 PHP 5.4.0 起,PHP 实现了一种代码复用的方法,称为 trait。Trait 是为类似 PHP 的单继承语言而准备的一种代码复用机制。Trait 为了减少单继承语言的限制,使开发人员能够自由地在不同层次结构内独立的类中复用 method。Trait 和 Class 组合的语义定义了一种减少复杂性的方式,避免传统多继承和 Mixin 类相关典型问题。Trait 和 Class 相似,但...原创 2018-05-25 09:12:10 · 201 阅读 · 0 评论 -
PHP大数相加
//大整数加法的php实现 function bigDataAdd($a,$b){ $m = strlen($a); $n = strlen($b); $num = $m>$n?$m:$n;//取最长数进行循环相加和进位 $result = '';//结果 $flag = 0; //进位标志 while($nu...原创 2018-06-09 12:10:36 · 1093 阅读 · 0 评论 -
PHP ZipArchive 实现压缩解压Zip文件
注:以下内容为转载(原文链接暂不清楚),请自己测试(有时间自己测试,会更新的)PHP ZipArchive 是PHP自带的扩展类,可以轻松实现ZIP文件的压缩和解压,使用前首先要确保PHP ZIP 扩展已经开启,具体开启方法就不说了,不同的平台开启PHP扩增的方法网上都有,如有疑问欢迎交流。这里整理一下常用的示例供参考。 Linux安装php的ZipArchive扩展模块[Centos]...原创 2018-07-19 14:27:16 · 12217 阅读 · 0 评论 -
微信公众号开发获取openID以及用户详细信息
转载文章,做一个记录,以备不时之需 需要做一套微信签到、抽奖系统,我要在后台存储微信用户的相关信息,openIDNickname之类的信息。在开发前有一点准备工作,先去授权权限,在权限表里进行设置,如图: 填写这个网站地址的时候一定要注意填写域名路径,没有http头,就是你的域名而已,在该域名下的所有页面都可访问到,被授权。好了初期的准备工作做好了,下来填写公众测试...原创 2018-08-22 10:11:41 · 8473 阅读 · 1 评论 -
PHP OpenSSL扩展 - 对称加密
PHP 在进入7.x 时代后,默认就不再附带 mcrypt 扩展,mcrypt 将被 openssl_* 一族函数所替代。所以,对于 PHPer 来说,有必要学习一下 PHP 的 OpenSSL 扩展。本文就先从 OpenSSL 扩展中的对称加密说起。后面会陆续更多非对称加密、数字签名、数字证书等函数的讲解。PHP 的 OpenSSL 扩展中,对称加密的相关函数有:openssl_en...原创 2019-03-26 14:40:49 · 701 阅读 · 0 评论 -
PHP 图片与base64相互转换
PHP 将图片转换为 base64 字符串格式: <?php//Filetype: JPEG,PNG,GIF $file = "encode.jpg"; //$file:图片地址if($fp = fopen($file,"rb", 0)) { $gambar = fread($fp,filesize($file)); fclose($fp); ...原创 2019-05-13 12:28:32 · 14826 阅读 · 0 评论 -
七牛云图片上传
自己看了一些博客说,由于七牛云使用了命名空间,而命名空间是PHP5.3之后才有的,所以使用的时候得注意一下,PHP版本必须是5.3之后的使用的时候自己去七牛云下载sdk包地址:https://github.com/qiniu/php-sdk/releases?ref=developer.qiniu.com下面就看看代码吧<?phpuse Qiniu\Auth原创 2017-08-10 08:44:30 · 865 阅读 · 0 评论 -
抽象类和接口的区别
看了这篇文章有所收获,但是有些地方了解的不是很彻底,留着学习!在开发人员岗位面试时,是否了解抽象类和接口之间的基本区别是一个很重要的考量因素。显而易见?完全不是。笔者面试过很多人,通常问的第一个问题是关于接口和抽象类的区别。但实际上很少有程序员能给出正确的答案。就这个问题来说,初级程序员可能都会清楚之间的区别,可能也并不一定理解其背后的原因,但其结构上的差异,特别是针对特定语言转载 2017-09-18 17:17:52 · 335 阅读 · 0 评论 -
nginx之负载均衡(轮询方式)
首先进行环境的搭建,这里我就不多说了,大家可以使用虚拟机进行测试学习一台作为负载均衡服务器,其他服务器作为web服务器,并在负载均衡服务器上搭建你的项目然后配置负载均衡服务器在vhost/域名配置文件里头部加入以下几行upstream 192.168.1.146 { //这个ip是自己定义的 随意即可 下面需要用 (服务器集群名) #原创 2017-08-10 20:22:44 · 1046 阅读 · 0 评论 -
php $_SERVER
$_SERVER$_SERVER是一个服务器端的变量数组,提供许多关于服务器及客户端请求的变量值,象客户端浏览器类型、IP地址等通过 print_r($_SERVER)可以输出其中包含了那些内容以下是通过指定参数输出对应的信息如/phpTest.PHP?id=2222&name=name1 标注不完整。//全部的http信息echo('1转载 2017-08-23 15:34:54 · 283 阅读 · 0 评论 -
win下安装memcached
本文章主要讲解win下安装memcached 和 php去检测memcached一、win下安装memcachedwin下安装memcached是需要memcached服务的,这个需要我们自己安装memcached服务下载地址:http://pan.baidu.com/s/1bo9Sy9T 密码:z0lx下载完成之后,解压 自己放到目录里, 我的放在了c盘的根目录里,原创 2017-08-23 15:43:26 · 225 阅读 · 0 评论 -
递归获取目录、子目录下的所有文件
/** * 递归遍历文件目录/文件 * @param string $dir 文件的路径 * @return array $result 返回文件路径数组 * * DIRECTORY_SEPARATOR * 目录分隔符,是定义php的内置常量。在调试机器上,在windows我们习惯性的使用“\”作为文件分隔符,但是在linux上系统不认识这个标识,于是就要引入这原创 2017-09-14 15:51:16 · 1066 阅读 · 0 评论 -
获取客户端的真实ip
获取客户端ip其实不是个简单的活儿,因为存在Ip欺骗,和代理问题,所以获取客户端的IP的真实性会打折扣的,不能百分百准确.但是我们还是尽量找一个比较完善的获取客户端真正ip方法.使用php获取IP的方法能找到很多function getIp(){if (getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "un原创 2017-09-14 15:54:21 · 424 阅读 · 0 评论 -
互换两个变量的值,不使用第三方变量
当交换的为数字时:<?php/** * 双方变量为数字时,可用交换方法五 * 使用加减运算符,相当于数学运算了^_^ */$a = 1; // a变量原始值$b = 2; // b变量原始值echo '交换之前 $a 的值:'.$a.', $b 的值:'.$b,''; // 输出原始值$a=$a+$b; // $a $b和值$b=$a-$b; // 不解释..$a=$a-$原创 2017-09-14 16:03:20 · 393 阅读 · 0 评论 -
获取字符串首次出现3次的字符
<?php//array_key_exists 判断字符是否 存在数组的键中$str='aabcbb';//定义的字符串$arr=[];for ($i=0; $i <strlen($str) ; $i++) { if(array_key_exists($str[$i], $arr)){ $arr[$str[$i]]+=1; if($arr[$str[$i]] == 3){原创 2017-09-15 10:45:15 · 1663 阅读 · 0 评论 -
使用PHPCS+GIT钩子保障团队开发中代码风格一致性实践
实现: php-cs可以用来检测代码是否符合PSR-2规范,同时支持对不符合规范的代码自动格式化,让其转成PSR-2的编码风格。 安装: 安装composerphp-cs依赖于composer,所以笔者需要先安装composer,安装的方法有很多种,这里提供mac操作系统和手动安装方法brew install composer手动安装composer命令为:wg...原创 2019-06-18 10:31:00 · 504 阅读 · 0 评论