php
文章平均质量分 55
悠悠倾我心
这个作者很懒,什么都没留下…
展开
-
phpExcel导出文件时内存溢出的问题
在使用PHPExcel导出文件时,经常会因为文件过大导致PHP内存溢出报错,为了解决这个问题,可以使用PHPExcel提供的参数进行优化。这里说的Excel文件过大并不一定是文件大小,更关键的在于文件内存放的数据和格式,如果数据很多,格式又比较丰富,那很容易会将PHP的内存耗尽。资料2中指出,Excel中一个单元格在不启用缓存的情况下大概占用内存是1K,一个8000行、31列的表格(24800...转载 2019-03-28 14:46:57 · 2021 阅读 · 0 评论 -
php 百度地图 腾讯地图 转换坐标
/** 中国正常GCJ02坐标---->百度地图BD09坐标* 腾讯地图用的也是GCJ02坐标* @param double $lat 纬度* @param double $lng 经度*/ function Convert_GCJ02_To_BD09($lat,$lng){ $x_pi = 3.14159265358979324 * 3000.0 / 180.0;转载 2017-08-05 09:14:39 · 1274 阅读 · 0 评论 -
php调用sqlserver存储过程实例,带输入输出参数,经测试可用
因工作原因最近需要用到调用sqlserver存储过程,并且需要输入输出参数,因为单纯的参考网上的一些例子总有问题,最后自己解决后决定写一写解决的过程。首先存储过程如下(其中带*的需要注意):CREATE PROCEDURE [dbo].[UPDATE_STOCK] ( @Updatetime varchar(50), --更新时间 @Orggu原创 2017-06-26 14:14:09 · 8518 阅读 · 0 评论 -
PHPExcel 导出2003和2007的excel文档实例
require_once 'common/excel/PHPExcel.replace_word' title="PHP知识库" target='_blank' style='color:#df3434; font-weight:bold;'>PHP'; require_once 'common/excel/phpExcel/Writer/Excel2007.replace_word' ti转载 2017-06-14 10:33:00 · 1634 阅读 · 0 评论 -
php 调用sqlsrv存储过程含输入和输出参数,亲测第二种输出很有效
$serverName = "127.0.0.1";$connectionInfo = array( "UID"=>"sa","PWD"=>"","Database"=>"test");$conn = sqlsrv_connect( $serverName, $connectionInfo);if( $conn === false ){echo "Could not conne原创 2017-06-22 16:15:07 · 2767 阅读 · 1 评论 -
php 调用sqlsrv 读取记录+返回参数 调用存储过程
一. sqlsrv连接数据库[php] view plain copy $serverName="ip, port"; $connectionInfo = array("UID"=>"username", "PWD"=>"password", "Database"=>"db", "CharacterSet"=>"u转载 2017-06-22 15:53:23 · 2299 阅读 · 0 评论 -
如何用正则表达式匹配指定字符开始和指定字符结束
a.*?b就是a开始b结束的匹配如果要限制是一行的开头和末尾的话就是^a.*?b$原创 2017-06-21 09:54:14 · 85710 阅读 · 4 评论 -
apache配置文件,httpd.conf详解
Apache的主配置文件:/etc/httpd/conf/httpd.conf默认站点主目录:/var/www/html/Apache服务器的配置信息全部存储在主配置文件/etc/httpd/conf/httpd.conf中,这个文件中的内容非常多,用wc命令统计一共有1009行,其中大部分是以#开头的注释行。[root@justin ~]# wc -l /etc/httpd/conf转载 2017-06-29 14:34:08 · 824 阅读 · 0 评论 -
PHP如何避免 $_SERVER["PHP_SELF"] 被黑客利用
$_SERVER["PHP_SELF"]是超级全局变量,返回当前正在执行脚本的文件名,与 document root相关。当黑客使用跨网站脚本的HTTP链接来攻击时,$_SERVER["PHP_SELF"]服务器变量也会被植入脚本。原因就是跨网站脚本是附在执行文件的路径后面的,因此$_SERVER["PHP_SELF"]的字符串就会包含HTTP链接后面的JavaScript程序代码。转载 2017-06-16 10:16:49 · 2498 阅读 · 1 评论 -
用PHP调用Oracle存储过程方法
//建立一个TEST表CREATE TABLE TEST ( ID NUMBER(16) NOT NULL, NAME VARCHAR2(30) NOT NULL, PRIMARY KEY (ID));//插入一条数据INSERT INTO TEST VALUES (5, 'PHP_BOOK');//建立一个存储过程转载 2017-05-09 16:42:25 · 1857 阅读 · 1 评论 -
一组PHP可逆加密解密算法
对于大部分密码加密,我们可以采用md5、sha1等方法。可以有效防止数据泄露,但是这些方法仅适用于无需还原的数据加密。对于需要还原的信息,则需要采用可逆的加密解密算法。下面一组PHP函数是实现此加密解密的方法:加密算法如下: 1 function encrypt($data, $key) 2 { 3 $key = md5($key)转载 2017-11-29 14:23:03 · 324 阅读 · 0 评论 -
CI框架 .htaccess 隐藏url在index.php解决方案
CodeIgniter(下面简称"CI")是一款国外优秀的PHP轻量级MVC框架,它支持PHP4和PHP5。是开发中小型可拓展性需求高的Web应用程序的利器。眼下你所见到的这个博客程序,正是採用CI进行的编写。秉承MVC架构的思想,CI中的全部控制器都须要经过单点入口文件index.php(默认)来载入调用。也就是说。在默认情况下,全部CI开发项目的URL都形例如以下面这样的形式:ht...转载 2018-09-10 15:20:33 · 528 阅读 · 0 评论 -
API 接口开发规范
整体规范建议采用RESTful 方式来实施。协议API与用户的通信协议,总是使用HTTPs协议,确保交互数据的传输安全。域名应该尽量将API部署在专用域名之下。https://api.example.com如果确定API很简单,不会有进一步扩展,可以考虑放在主域名下。https://example.org/api/api版本控制应该将API的版本号放入URL。https...转载 2018-09-10 19:40:07 · 403 阅读 · 0 评论 -
解决php无法通过file_get_contents或curl采集页面内容,file_get_contents无法获取curl post内容的问题
工作中要采集一些网页的数据,在php中常用到的采集函数就是file_get_contents和curl函数。php在用file_get_contents函数采集网站时,有时明明用浏览器可以看,但就是采不到任何内容。这样的问题我就遇到了,我要采集的这个页面却怎么也获取不到数据,经过测试获取百度、新浪、网易等页面内容都是正常。这个问题让我百思不得其解,于是找了个朋友来试试,他通过file_get_c...转载 2019-01-14 14:10:58 · 2104 阅读 · 0 评论 -
php 解决json_encode中文UNICODE转码问题
用PHP的json_encode来处理中文的时候, 中文都会被编码, 变成不可读的, 类似”\u***”的格式,如果想汉字不进行转码,这里提供三种方法 1.升级PHP,在PHP5.4, 这个问题终于得以解决, Json新增了一个选项: JSON_UNESCAPED_UNICODE, 故名思议, 就是说, Json不要编码Unicode.<?phpecho json_encod...转载 2018-12-25 16:48:51 · 317 阅读 · 0 评论 -
curl模拟数据请求,在header头中设置自定义的参数
我们定义了三个参数,token、language、region,放入header发送过去<?php$url = 'http://www.example.com';$header = array('token:JxRaZezavm3HXM3d9pWnYiqqQC1SJbsU','language:zh','region:GZ');$content = array( ...转载 2018-12-25 12:04:52 · 3524 阅读 · 0 评论 -
php 不等待返回的实现方法(异步调用)
PHP异步执行的常用方式常见的有以下几种,可以根据各自优缺点进行选择:1.客户端页面采用AJAX技术请求服务器优点:最简单,也最快,就是在返回给客户端的HTML代码中,嵌入AJAX调用,或者,嵌入一个img标签,src指向要执行的耗时脚本。缺点:一般来说Ajax都应该在onLoad以后触发,也就是说,用户点开页面后,就关闭,那就不会触发我们的后台脚本了。而使用img标签的话,这种方式不能称...转载 2018-12-13 10:49:23 · 3207 阅读 · 0 评论 -
PHP异步执行的几种常用方式
本文主要介绍了4种PHP异步执行的常用方式,帮助大家更好地分析php异步调用方法,熟练掌握,感兴趣的小伙伴们可以参考一下。希望对大家有所帮助。 本文为大家讲述了php异步调用方法,分享给大家供大家参考,具体内容如下客户端与服务器端是通过HTTP协议进行连接通讯,客户端发起请求,服务器端接收到请求后执行处理,并返回处理结果。有时服务器需要执行很耗时的操作,这个操作的结果并不需要返回给客户...转载 2018-12-13 10:47:38 · 3221 阅读 · 0 评论 -
php异步实现,避免长时间等待
处理的php异步的方法有好几种,这里我就只介绍我经常用的而且官方也推荐的废话少说,直接贴代码//php异步public function doRequest($host,$path, $param=array()){ $query = isset($param)? http_build_query($param) : ''; $port = 80; $errn...转载 2018-12-13 10:46:33 · 1605 阅读 · 0 评论 -
workman用户组
关于用户分组socket−&gt;on(′login′,function(socket-&gt;on(&#x27;login&#x27;, function (socket−>on(′login′,function(uid)use($socket){global $uidConnectionMap;global $db;uid1=explode(′,′...转载 2018-09-29 19:33:02 · 369 阅读 · 0 评论 -
PhpStorm常用快捷键总结
以下是快捷键,并进行了分类。虽然快捷键是可以自定义的,但是还是推荐使用系统默认设置快捷键,因为不同编辑器默认的快捷键大同小异,比较符合用户习惯。 PHPStorm查询快捷键设置快捷键,Ctrl+Alt+S打开设置,选择快捷键,你可以选择不同编辑器快捷键并应用,这相当于有很多套快捷键供你选择。 以下是默认快捷键:写代码就用的快捷键Ctrl+ c 粘贴 Ctrl+ v 复制 Ctr...转载 2018-09-21 08:50:34 · 397 阅读 · 0 评论 -
php项目权限系统设计
说起php的权限,很多人都容易想起rbac,这里不多介绍。下面介绍一种通用的权限设计:首先我们设定一种场景,我们为一个商城做了一个权限系统,商城里有许多店铺,每个店铺有店长和店员,商城还有运营助理帮忙管理这些店铺。 一、基础表:店铺表,这里只取店铺的id和name。菜单表,这里取每个菜单的 模块/控制器/方法 和名称,角色表,主要用在分配角色的时候,我们约定,l...转载 2018-09-19 09:23:58 · 1219 阅读 · 0 评论 -
ci调用oracle的存储过程
最近因为做项目需要用到oracle存储过程,研究了一下ci自带的存储过程调用方法,stored_procedure,主要是params不知道怎么写,研究了好久终于搞定。原创 2017-05-09 15:09:57 · 803 阅读 · 0 评论 -
阿里云 centos7.2下部署 LAMP (CentOS 7.2)
简介LAMP指Linux+Apache+Mysql/MariaDB+Perl/PHP/Python是一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台。部署方式在阿里云服务器下部署LAMP提供三种部署方式,镜像部署、一键安装包部署和手动部署(源码编译安装/YUM安装),转载 2017-05-25 15:30:55 · 2432 阅读 · 1 评论 -
PHP中获取文件扩展名的N种方法
PHP中获取文件扩展名的N种方法 从网上收罗的,基本上就以下这几种方式:第1种方法:function get_extension($file){substr(strrchr($file, '.'), 1);}第2种方法:function get_extension($file){return substr($file, strrpos($file,转载 2017-05-17 10:28:53 · 252 阅读 · 0 评论 -
php mysql数据库备份2
用php代码实现数据库备份可以使网站的管理变得非常便捷,我们可以直接进后台操作就能完成数据库的备份。关键技术:1. 首先要得到该数据库中有哪些表,所用函数 mysql_list_tables(),然后可以将获取的所有表名存到一个数组。2. show create table 表名 可以获取表结构。3. select转载 2016-08-04 10:09:45 · 440 阅读 · 0 评论 -
php mysql数据库备份1
/** * * @name php备份数据库 * @param string $DbHost 连接主机 * @param string $DbUser 用户名 * @param string $DbPwd 连接密码 * @param string $DbName 要备份的数据库 * @param strin转载 2016-08-04 10:07:00 · 256 阅读 · 0 评论 -
workerman 实现消息推送
WEB消息推送框架web-msg-sender是一款web长连接推送框架,采用PHPSocket.IO开发,基于WebSocket长连接通讯,如果浏览器不支持WebSocket则自动转用comet推送。 通过后台推送消息,消息可以即时推送到客户端,非轮询,实时性非常好,性能很高。特点:多浏览器支持支持针对单个用户推送消息支持向所有用户推送消息长连接推送(websocket或者c转载 2016-07-23 09:21:05 · 19242 阅读 · 3 评论 -
微信JSSDK上传多张图片
做过微信开发的都知道,在部分android机型里微信不支持网页上传图片的,这是由于这些机型的文件上传存在内存泄漏,会导致微信闪退,所以微信内置浏览器将文件上传屏蔽。这就导致这些机型的用户在使用微信浏览器访问某些需要上传图片的网页时功能不正常。leo108's blog前不久微信公开了一些接口,其中有一个uploadImage接口用于上传图片,一般和chooseImage接口配合使用。先转载 2016-06-25 10:33:51 · 11054 阅读 · 0 评论 -
php判断文件是否为图片
利用getimagesize函数: function isImage($filename){ $types = '.gif|.jpeg|.png|.bmp';//定义检查的图片类型 if(file_exists($filename)){ $info = getimagesize($filename); $ext转载 2016-06-24 16:09:09 · 2013 阅读 · 0 评论 -
微信上传图片到自己的服务器
利用微信的jssdk上传图片之后怎么上传到自己的服务器wx.uploadImage 接口在文件上传成功后,会返回 serverId(即 media_id),种用 serverId 可以去微信服务器去将文件下载到自己的服务器。api拍照或从手机相册中选图接口wx.chooseImage({ count: 1, // 默认9 sizeType原创 2016-06-24 14:40:56 · 16015 阅读 · 2 评论 -
Yii框架分库设计
需求:原网站功能庞大,数据库服务器与数据库众多,有部分数据单库多表都不足以应付业务的快速增长(例如用户系统)。我们便有了分库的需求 问题:YII单DB方式已经满足不了我们的需求,急切需要对YII进行扩展设计,支持数据库分库设计 解决方法:1、在protected/component目录下面新建一个JUnicomActiveRecord.php文件转载 2016-04-18 09:39:31 · 549 阅读 · 0 评论 -
Composer入门
Java有Maven, Node.js有npm, ROR有gem, 这些语言的程序员在开心地使用包管理工具加速开发效率时,PHPer们还在复制粘贴的黑暗中。PHP在Composer之前,包管理的历史不堪回首。在相当长的一段时间内,如果应用依赖于第三方库,PHPer需要拷贝这些库的源代码, 或者通过PEAR、PECL安装。如果第三方库又依赖于更多的第三方库,那么很快就会进入依赖的黑洞。直到C转载 2016-04-13 17:35:21 · 262 阅读 · 0 评论 -
yii2 安装
yii2 的资料很少,在网上搜了很多资料,综合着安装完之后,才发现他们都很不全面,以至于走了很多弯路 下面我把完整的安装流程介绍给大家: 前提:非常重要,你的php版本必须是php5.4以上 1.首先需要下载应用模板,分为基础模板和高级应用模板,这里我以高级应用模板为例子 : 去这里现在高级应用模板 https://github.com/yiisoft/yii转载 2016-04-13 16:52:46 · 333 阅读 · 0 评论 -
php mysql数据库备份类
/** * @author yanue * @copyright Copyright (c) 2012 yanue.net * @link http://yanue.net/archives/174.html * @version 1.1 * 创建时间: 2012年5月21日 * 说明:分卷文件是以_v1.sql为结尾(20120522021241_all_v1.sql) * 功转载 2016-08-04 09:58:50 · 270 阅读 · 0 评论 -
用select语句来代替show create table
用select语句来代替show create table来简单显示表结构,此语句不包含创建表索引语句。select语句查询表结构:SET @db_name='aa';SET @table_name='bb';SELECT TABLE_NAME,CONCAT('CREATE TABLE ','`',TABLE_NAME,'` (',GROUP_CONCAT("\r\n",CO转载 2016-08-04 13:56:28 · 3102 阅读 · 0 评论 -
对php datetime类型的数据转换成字符串的处理
如果查出的数据是datetime类型的对象,想要转换成字符串显示则需要使用$datetimeobj->format("Y-m-d H:i:s.u");原创 2016-08-04 18:03:39 · 7743 阅读 · 0 评论 -
php7.0 出现 curl_setopt(): Disabling safe uploads is no longer supported in 报错!
项目换成php7.0,进行了测试,使用curl时,出现:curl_setopt(): Disabling safe uploads is no longer supported in xxx。定位到代码行: //5.6版本兼容 if (ver_compare(phpversion(), '5.6') >= 0) { curl_setopt($ch, CURLOP转载 2017-05-05 09:13:35 · 970 阅读 · 0 评论 -
去掉CodeIgniter(CI)默认url中的index.php
去掉CodeIgniter(CI)默认url中的index.php的步骤:1.打开apache的配置文件,conf/httpd.conf :1LoadModule rewrite_module modules/mod_rewrite.so把该行前的#去掉。搜索 AllowOver转载 2017-05-03 08:44:32 · 3234 阅读 · 0 评论 -
微信JS-SDK之图像接口开发详解
微信JS-SDK之图像接口开发详解时间 2015-06-19 12:38:00 博客园精华区原文 http://www.cnblogs.com/it-cen/p/4587812.html主题 JavaScript由于现在手头的项目中有一个上传证件照认证的功能(手机端),之前的思路是直接点击上传,然后直接将图片上传到服务器去,这篇文章有讲到( http://w转载 2017-01-19 14:39:19 · 8343 阅读 · 1 评论