冰雨战士

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
  118 随笔 :: 0 文章 :: 11 评论 :: 21万 阅读

随笔分类 -  PHP

1

摘要:一.资料网站http://cn.php.net/imagickhttp://www.imagemagick.org/script/index.phphttp://www.imagemagick.org/download/binaries/二.实例<?php//获取水印图片$logo = new Imagick("logo.png");$logo->setImageResolution(0.01,0.03);//创建一个Imagick对象,同时获取要处理的源图$im = new Imagick( "old_large_img_2.jpg" ); 阅读全文
posted @ 2013-05-23 11:14 冰雨战士 阅读(593) 评论(0) 推荐(0) 编辑

摘要:解决.sql大文件无法导入的问题 phpmyadmin 上传文件大小限制的解决方法用Navicat for MySQL 这个软件中的批处理任务导入.sql文件,经常会出现错误乱码的现象,所以一般用phpmyadmin导入文件和导出文件不会出现乱码的现象但是 使用phpmyadmin导入.sql文件时有一个限制,开始是不能大于2M,所以要对php.ini的参数进行更改,以下是更改方法,更改后需要重新启动;一般几十M的文件 都没有问题,我本地测试了100M的.sql文件都可以导入,当修改好php.ini的参数后,如果文件太大,浏览器会出现假死的现象,这里建议还是把内存设置调大一点,还要看机器的硬件 阅读全文
posted @ 2013-02-05 13:49 冰雨战士 阅读(941) 评论(0) 推荐(0) 编辑

摘要:<?php//当前需要下载的文件在服务器上的路径$local_file='destination.rar';//设置下载的速度,单位kb/s$download_speed=20.5;if(file_exists($local_file) && is_file($local_file)){ //以附件形式输出 header('Cache-control: private'); header('Content-Type: application/octet-stream'); header('Content-Length 阅读全文
posted @ 2012-12-14 09:20 冰雨战士 阅读(518) 评论(0) 推荐(0) 编辑

摘要:这个问题是在Jquery Ajax进行跨域时遇到的,经过简单的研究,Kaijia总结了最快速使Ajax数据从单台服务器迁移到多台服务器的的方法。首先将原有的Jquery代码中的dataType改成“jsonp”,具体代码如下:123456789$.ajax({url: "http://ajax.yoursite.com/api.php",async: false,dataType: "jsonp",jsonp: "callback",success: function( json ){alert( json );}});其他格式的代码 阅读全文
posted @ 2012-12-06 10:30 冰雨战士 阅读(454) 评论(2) 推荐(0) 编辑

摘要:述在PHP开发中工作里非常多使用到超时处理到超时的场合,我说几个场景:1. 异步获取数据如果某个后端数据源获取不成功则跳过,不影响整个页面展现2. 为了保证Web服务器不会因为当个页面处理性能差而导致无法访问其他页面,则会对某些页面操作设置3. 对于某些上传或者不确定处理时间的场合,则需要对整个流程中所有超时设置为无限,否则任何一个环节设置不当,都会导致莫名执行中断4. 多个后端模块(MySQL、Memcached、HTTP接口),为了防止单个接口性能太差,导致整个前面获取数据太缓慢,影响页面打开速度,引起雪崩5. 。。。很多需要超时的场合这些地方都需要考虑超时的设定,但是PHP中的超时都是分 阅读全文
posted @ 2012-12-05 16:39 冰雨战士 阅读(623) 评论(0) 推荐(0) 编辑

摘要:error_reporting() 设置 PHP 的报错级别并返回当前级别。语法error_reporting(report_level)如果参数 level 未指定,当前报错级别将被返回。下面几项是 level 可能的值:1 E_ERROR2 E_WARNING4 E_PARSE8 E_NOTICE16 E_CORE_ERROR32 E_CORE_WARNING64 E_COMPILE_ERROR128 E_COMPILE_WARNING256 E_USER_ERROR512 E_USER_WARNING1024 E_USER_NOTICE2047 E_ALL2048 E_STRICTE_N 阅读全文
posted @ 2012-10-08 17:46 冰雨战士 阅读(285) 评论(0) 推荐(0) 编辑

摘要:stream_context_create作用:创建并返回一个文本数据流并应用各种选项,可用于fopen(),file_get_contents()等过程的超时设置、代理服务器、请求方式、头信息设置的特殊过程。函数原型:resource stream_context_create ([ array $options[, array $params ]] )在使用file_get_contents函数的时候,经常会出现超时的情况,在这里要通过查看一下错误提示,看看是哪种错误,比较常见的是读取超时,这种情况大家可以通过一些方法来尽量的避免或者解决。这里就简单介绍两种:一、增加超时的时间限制这里需要 阅读全文
posted @ 2012-08-27 16:43 冰雨战士 阅读(393) 评论(0) 推荐(0) 编辑

摘要:有时候,运行 Nginx、PHP-CGI(php-fpm) Web服务的 Linux 服务器,突然系统负载上升,使用 top 命令查看,很多 php-cgi 进程 CPU 使用率接近100%。后来,我通过跟踪发现,这类情况的出现,跟 PHP 的 file_get_contents() 函数有着密切的关系。 大、中型网站中,基于 HTTP 协议的 API 接口调用,是家常便饭。PHP 程序员们喜欢使用简单便捷的 file_get_contents("http://example.com/") 函数,来获取一个 URL 的返回内容,但是,如果 http://example.co 阅读全文
posted @ 2012-08-13 16:08 冰雨战士 阅读(265) 评论(0) 推荐(0) 编辑

摘要:1:预定义在home目录,也可以其他任意目录,写一个文件,例如caleng_module.def内容是你希望定义的函数名以及参数:int a(int x,int y)string b(string str,int n)2:到php源码目录的ext目录#cd /usr/local/php-5.4.0/ext/执行命令,生成对应扩展目录#./ext_skel --extname=caleng_module --proto=/home/hm/caleng_module.def3:修改config.m4去掉dnl的注释PHP_ARG_ENABLE(caleng_module, whether to e 阅读全文
posted @ 2012-07-31 10:38 冰雨战士 阅读(782) 评论(0) 推荐(0) 编辑

摘要:以前写过一次PHP扩展DLL,那个是利用调用系统的COM口实现的扩展,与PHP不能真正融合。心血来潮,研究了一下PHP的源码,网上找了一些资料,自己尝试写了一个扩展DLL,测试没问题。下面记录一下具体扩展方法: 1、首先从www.php.net网站上下载php源码,此处以php-5.2.17版本为例,下载后解压至E:盘根目录下(目录可以自己随意定)。 2、下载安装VC++ 6.0,因为PHP源码是利用6.0版本写的,所以使用这个版本编译不会出现意外,别的版本未测试。 3、把VC++ 6.0安装目录中的Microsoft Visual Studio\Common\MSDev98\Bin 绝... 阅读全文
posted @ 2012-07-31 10:35 冰雨战士 阅读(272) 评论(0) 推荐(0) 编辑

摘要:关于PHP以fastcgi方式运行的文章,网络上较多,也许由于转载的原因,有些地方不甚明了,笔者亲自测试,整理成文,供大家参考。1、linux系统[root@localhost /]# cat /etc/redhat-release CentOS release 5.2 (Final)2、安装apache 下载并解压缩apache,本文演示用的版本是2.2.19[root@localhost]# wget http://labs.renren.com/apache-mirror//httpd/httpd-2.2.19.tar.gz[root@localhost]# tar xvzf httpd 阅读全文
posted @ 2012-07-24 15:52 冰雨战士 阅读(5976) 评论(1) 推荐(0) 编辑

摘要:function nocache_headers() { @ header('Expires: Thu, 01 Jan 1970 00:00:01 GMT'); @ header('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT'); @ header('Cache-Control: no-cache, must-revalidate, max-age=0'); @ header('Pragma: no-cache'); } nocache_h 阅读全文
posted @ 2012-07-21 09:52 冰雨战士 阅读(959) 评论(0) 推荐(0) 编辑

摘要:php处理异常大概借鉴了Java的异常处理机制。所以在PHP中异常处理是用try,catch和throw。在PHP中,检测异常的是try,捕获异常的是catch,所以抛出异常的是throw。php异常处理的原理是什么呢?在PHP程序中,程序开始执行,然后运行到try,检测是否有异常,如果有异常,并且抛出了异常(throw),则php程序通过catch捕获异常,对异常进行处理。如果没有异常,或者没有抛出异常,则继续执行其余的程序,直至程序执行完毕。--------------------------------------------------------------------------- 阅读全文
posted @ 2012-07-16 11:43 冰雨战士 阅读(490) 评论(0) 推荐(0) 编辑

摘要:在速度上,静态页面要比动态页面的比方php快很多,这是毫无疑问的,但是静态页面的灵活性较差。做静态页面的几个关键:其实页面静态化就是页面级缓存,相当于把整个html页面缓存起来,用的时候跳过数据库直接读文件。ob_start()函数:打开输出缓冲区.函数格式 void ob_start(void)说明:当缓冲区激活时,所有来自PHP程序的非文件头信息均不会发送,而是保存在内部缓冲区。为了输出缓冲区的内容,可以使用ob_end_flush()或flush()输出缓冲区的内容。Flush:刷新缓冲区的内容,输出。函数格式:flush()说明:这个函数经常使用,效率很高。ob_get_content 阅读全文
posted @ 2012-07-07 11:06 冰雨战士 阅读(644) 评论(0) 推荐(0) 编辑

摘要:“php是一门及其容易入门的语言,刚入门的新手不到几分钟的时间可能就会用echo打印出一个hello world !但是他是真正的程序员吗?怎么来定义程序员呢?如果想真正成为一个程序员,那么就必须遵循一套程序书写规范,”我们经常编写一些函数,但是这些函数可能也只有自己能看得懂,甚至过一段时间自己也不认识自己写的了,那么怎么办呢?最好的办法当然是给给自己的代码加上注释。我们可能熟悉很多注释的写法C pear PHP注释等等,但我们用到的主要还是# 和/**/。#是一种简短的注释方法。可能你会用它去注释一个变量,或者调用的一个方法。/**/我们可能还在用它去注释掉一大段代码,但是怎么用它去标准的注 阅读全文
posted @ 2012-07-01 16:57 冰雨战士 阅读(938) 评论(0) 推荐(0) 编辑

摘要:一、在php.ini里面设置max_execution_time=1800;二、通过PHP的ini_set 函数设置ini_set("max_execution_time", "1800");三、通过set_time_limit 函数设置set_time_limit(1800) 阅读全文
posted @ 2012-06-30 18:40 冰雨战士 阅读(725) 评论(0) 推荐(0) 编辑

摘要:"^\d+$" //非负整数(正整数+0)"^[0-9]*[1-9][0-9]*$" //正整数"^((-\d+)|(0+))$" //非正整数(负整数+0)"^-[0-9]*[1-9][0-9]*$" //负整数"^-?\d+$" //整数"^\d+(\.\d+)?$" //非负浮点数(正浮点数+0)"^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$&qu 阅读全文
posted @ 2012-03-02 12:20 冰雨战士 阅读(5017) 评论(1) 推荐(0) 编辑

摘要:方法一:直接安装1、下载memcache的windows稳定版,解压放某个盘下面,比如在c:/memcached2、在终端(也即cmd命令界面)下输入"c:/memcached/memcached.exe -d install"安装3、再输入:"c:/memcached/memcached.exe -d start"启动。(以后memcached将作为windows的一个服务每次开机时自动启动。这样服务器端已经安装完毕了。)memcached的基本设置:-p 监听的端口-l 连接的IP地址, 默认是本机-d start 启动memcached服务-d r 阅读全文
posted @ 2012-02-09 10:27 冰雨战士 阅读(1651) 评论(0) 推荐(0) 编辑

摘要:1、AddcSlashes 字符串加入反斜线语法:string addcslashes(string str,string charlist);2、AddSlashes 字符串加入反斜线语法:string addslashes(string str);在特定的字符前加反斜线:'、"、\、NULL3、bin2hex 将二进位转成十六进位语法:string bin2hex(string str);4、Chop 去除连续空白,同rtrim()语法:string chop(string str);5、Chr Chr根据ASCII值返回字符语法:string chr(int ascii 阅读全文
posted @ 2012-01-17 13:57 冰雨战士 阅读(413) 评论(0) 推荐(0) 编辑

摘要:;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; 错误报告是按位的。或者将数字加起来得到想要的错误报告等级。; E_ALL - 所有的错误和警告; E_ERROR - 致命性运行时错; E_WARNING - 运行时警告(非致命性错); E_PARSE - 编译时解析错误; E_NOTICE - 运行时提醒(这些经常是是你的代码的bug引起的,;也可能是有意的行为造成的。(如:基于未初始化的变量自动初始化为一个;空字符串的事实而使用一个未初始化的变量); E_CORE_ERROR - 发生于PHP启动时初始化过程中的致命错误; E_CORE_WARNING - 发生于PHP启动时 阅读全文
posted @ 2011-12-21 10:22 冰雨战士 阅读(212) 评论(0) 推荐(0) 编辑

1
点击右上角即可分享
微信分享提示