Welcome 微信登录

首页 / 网页编程 / PHP

解决PHP超大文件下载,断点续传下载的方法详解

解决PHP超大文件下载,断点续传下载的方法详解

最近导出的时候出现一个php内存溢出的问题,原因就是在于下载的时候读取生成的临时文件过大,PHP内存无法容纳,一开如是想到更改PHP内存限制,但是这个只是一个缓兵之计,于是想到了另外一个方法是把文件分次读取,并下载。 以下是源代码:复制代码 代码如下:<?php $sourceFile = "1.tmp"; //要下载的临时文件名 $outFile = "用户订单.xls"; //下载保存到客户端的文件名 $file_extension = strt...
PHP转换文件夹下所有文件编码的实现代码

PHP转换文件夹下所有文件编码的实现代码

PHP转换文件夹下所有文件的编码 适合发布网站的其他编码版本 比如你有一个GBK版本 你想有一个UTF8版本 或者你只有GBK的源码 你想二次开发 但是你不想改变IDE的编码方式 你可以用这个程序将其批量转化为UTF8:代码如下:复制代码 代码如下:<?php/*** 把一个文件夹里的文件全部转码 只能转一次 否则全部变乱码* @param string $filename*/function iconv_file($filename,$input_...
PHP编码规范的深入探讨

PHP编码规范的深入探讨

缩进与空白字符(Indenting and Whitespace)使用 2 个空格而不使用 tab 键进行代码缩进(notepad++, Eclipse 等编辑器均支持此项配置);行尾不应该有空白字符应使用 (Unix换行符),而不是 (Windows 换行符)所有文件均应以一个空行结尾运算符(Operators)所有二元运算符(二个值之间的运算符),如 +, -, =, !=, ==, > 等等,在运算符两端均需留有一个空格,如应该使用 ...
探讨file_get_contents与curl效率及稳定性的分析

探讨file_get_contents与curl效率及稳定性的分析

做过好多抓取别家网站内容的产品,习惯了使用方便快捷的file_get_contents函数,但是总是会遇到获取失败的问题,尽管按照手册中的例子设置了超时,可多数时候不会奏效:复制代码 代码如下:$config["context"] = stream_context_create(array(‘http" => array(‘method" => “GET”, "timeout" => 5//这个超时时间不稳定,经常不奏效 ) ));这时候...
浅谈PHP强制类型转换,慎用!

浅谈PHP强制类型转换,慎用!

PHP是一门弱类型的语言。这是它的优势和特点,但是有的时候你又不得不对类型进行相应的转换。这个时候问题就来了。因为很多情况下,你会发现转换类型之后得到的数据和预期的值相差老大一截。这里我以强制转换为整形作为例子。看下面的代码,可以说你绝对不可能说出正确的答案。echo (int) 123.999999999999999; echo (int) -1.999999999999999;echo (int) -1.9999999999999999; echo (...
解析PHP中如何将数组变量写入文件

解析PHP中如何将数组变量写入文件

在用PHP记录日志,或者是 Ajax 请求出错想要 debug 的时候。我们一般都会将信息写入到一个指定的文件当中。然后根据相应的信息来处理问题。比如笔者最喜欢在用 Ajax 取不到数据的时候,在PHP脚本里面加上下面一段代码复制代码 代码如下:$fp = fopen("./a.txt", "a+b"); fwrite($fp, $content); fclose($fp); 但是,这里有一个问题。那就是 $content 是一个数组怎么办?你可能会说,我...
解析如何屏蔽php中的phpinfo()函数

解析如何屏蔽php中的phpinfo()函数

我们配置php环境的时候往往都会写phpinfo();这个函数来测试php环境是否安装成功,但往往这个函数也会给系统带来安全隐患,那么如何让关掉这个函数呢?下面介绍一种方法:修改php.ini文件,在里面找到如下行,复制代码 代码如下:disable_functions = ; This directive allows you to disable certain; functions for security reasons. It receives;...
一个简洁的PHP可逆加密函数(分享)

一个简洁的PHP可逆加密函数(分享)

很多时候我们需要对数据进行加密解密,比如有些数据需要保存到cookie中,但又不能被用户轻易得到这些数据,这时我们就需要加密这些数据保存到cookie中,等我们需要使用它们的时候再解密。加密的过程如下:复制代码 代码如下:// 加密数据并写到cookie里$cookie_data = $this -> encrypt("nowamagic", $data);$cookie = array( "name" => "$data", "value" ...
解析PHP多种序列化与反序列化的方法

解析PHP多种序列化与反序列化的方法

序列化是将变量转换为可保存或传输的字符串的过程;反序列化就是在适当的时候把这个字符串再转化成原来的变量使用。这两个过程结合起来,可以轻松地存储和传输数据,使程序更具维护性。1. serialize和unserialize函数这两个是序列化和反序列化PHP中数据的常用函数。复制代码 代码如下:<?php$a = array("a"=> "Apple" ,"b" => "banana", "c" => "Coconut");//序列化数...
深入PHP empty(),isset(),is_null()的实例测试详解

深入PHP empty(),isset(),is_null()的实例测试详解

有关 PHP 的 empty(),isset() 还有 is_null() 这三个函数的用法讨论得已经很多了,而且很多资料也未必能说得很清楚。这里再重复一次,但不是从概念去说,直接用程序例子来说话,应该记忆会比较深刻些。测试的类型如下:<?php$a;$b = false;$c = "";$d = 0;$e = null;$f = array();?>empty()首先是empty的var_dump输出:<?php...
PHP CodeBase:将时间显示为"刚刚""n分钟/小时前"的方法详解

PHP CodeBase:将时间显示为&quot;刚刚&quot;&quot;n分钟/小时前&quot;的方法详解

在很多场合为了显示出信息的及时性,一般会将时间显示成“刚刚”,“5分钟前”,“3小时前”等,而不是直接将时间打印出来。比如微博,SNS类应用就最长用到这个功能。而一般存储在数据库中的时间格式为 Unix时间戳,所以这里记录一个将 Unix时间戳 转化为时间轴显示的PHP函数。函数比较简单,直接看代码就很好懂了。复制代码 代码如下:<?phpdate_default_timezone_set("PRC");$date = "1351836000";ec...
深入理解:单一入口、MVC、ORM、CURD、ActiveRecord概念

深入理解:单一入口、MVC、ORM、CURD、ActiveRecord概念

MVC MVC是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型(M)、视图(V)、控制器(C),它们各自处理自己的任务。 视图 :视图是用户看到并与之交互的界面。对老式的Web应用程序来说,视图就是由HTML元素组成的界面,在新式的Web应用程序中,HTML依旧在视图中扮演着重要的角色,但一些新的技术已层出不穷,它们包括Adobe Flash和象XHTML,XML/XSL,WML等一些标识语言和Web ...
深入php 正则表达式的学习探讨

深入php 正则表达式的学习探讨

1、入门简介简单的说,正则表达式是一种可以用于模式匹配和替换的强有力的工具。我们可以在几乎所有的基于UNIX系统的工具中找到正则表达式的身影,例如,vi编辑器,Perl或PHP脚本语言,以及awk或sed shell程序等。此外,象JavaScript这种客户端的脚本语言也提供了对正则表达式的支持。由此可见,正则表达式已经超出了某种语言或某个系统的局限,成为人们广为接受的概念和功能。正则表达式可以让用户通过使用一系列的特殊字符构建匹配模式,然后把匹配模式与...
<< 291 292 293 294 295 296 297 298 299 300 >>