利用php创建水中倒影的图片效果
作者:admin 日期:2012-04-25
直接上代码:
- < ?php
- /**
- * reflection
- *
- */
- function reflection($image){
- /* 读取原图片 */
- $im = new Imagick($image);
- /* 创建缩图 */
- $im->thumbnailImage( 200, null );
- /*加边框 */
- $im->borderImage( "white", 5, 5 );
- /* 克隆并创建镜像图片 */
- $reflection = $im->clone();
- $reflection->flipImage();
- /* 创建一个滤镜效果,合成 */
- $gradient = new Imagick();
- $gradient->newPseudoImage( $reflection->getImageWidth() + 10,
- $reflection->getImageHeight() + 10,
- "gradient:transparent-black"
- );
- /*合成 */
- $reflection->compositeImage( $gradient, imagick::COMPOSITE_OVER, 0, 0 );
- /* 设置透明度*/
- $reflection->setImageOpacity( 0.3 );
- /* 创建一个空白背景图层,足够大 */
- $canvas = new Imagick();
- $width = $im->getImageWidth() + 40;
- $height = ( $im->getImageHeight() * 2 ) + 30;
- $canvas->newImage( $width, $height, "black", "png" );
- /* 合成最终效果图*/
- $canvas->compositeImage( $im, imagick::COMPOSITE_OVER, 20, 10 );
- $canvas->compositeImage( $reflection, imagick::COMPOSITE_OVER,
- 20, $im->getImageHeight() + 10 );
- /* 输出图片*/
- header( "Content-Type: image/png" );
- echo $canvas;
- }
- reflection('me.jpg');
- ?>
解决php网站服务器内存耗尽方法
作者:admin 日期:2012-04-25
解决php服务器软件内存耗尽Allowed memory size of 123456789 bytes exhausted方法
出现该错误的原因:
是因为php页面消耗的最大内存默认是为 8M (在PHP的ini件里可以看到) ,如果文件太大 或图片太大 在读取的时候 会发生上述错误。
解决办法有三个:
1,修改 php.ini (永久性方法,只要用这个服务器软件)
将memory_limit由 8M 改成 16M(或更大),重启apache服务
2,在PHP 文件中 加入 ini_set(”memory_limit”,”100M”); (暂时性方法,只作用于这个php文件所涉及的范围)
注意:为了系统的其它资源的正常使用 请您不要将 memory_limit设置太大,其中-1为不限
3,修改.htaccess 文档(前提是该目录支持.htaccess) (暂时性方法,只作用于此目录及其所有子目录)
在文档中新增一句:php_value memory_limit 16M(或更大)
PHP编程习惯
作者:admin 日期:2012-04-25
利用php创建打印文字gif动画效果
作者:admin 日期:2012-04-25
在PHP中使用Curl
作者:admin 日期:2012-04-25
你可能在你的编写PHP脚本代码中会遇到这样的问题:怎么样才能从其他站点获取内容呢?这里有几个解决方式;最简单的就是在php中使用fopen()函数,但是fopen函数没有足够的参数来使用,比如当你想构建一个“网络爬虫”,想定义爬虫的客户端描述(IE,firefox),通过不同的请求方式来获取内容,比如POST,GET;等等这些需求是不可能用fopen()函数实现的。
为了解决我们上面提出的问题,我们可以使用PHP的扩展库-Curl,这个扩展库通常是默认在安装包中的,你可以它来获取其他站点的内容,也可以来干别的。
在这篇文章中,我们一起来看看如何使用curl库,并看看它的其他用处,但是接下来,我们要从最基本的用法开始
广告位