文章标签 ‘PHP’
以前看到过新版本的Symfony的Form文档,在类中可以通过$this['key']的方法来访问当前对象中的widgets,我一直很诧异,为什么可以这样用呢?我试验过很多方法都没成功,今天终于找到答案了。 方法其实很简单,需要在类中继承PHP预定义接口ArrayAccess,并且包含offsetGet, offsetSet, offsetExists和offsetUnset四个方法就可以实现上述功能了。下面来举个例子:
今天看到很多网站的网页都变成灰色了,很多是使用了IE的滤镜,但是在非IE下就失效了,有的用的是另做的一套黑白图片实现网页的黑白版,这样显得又太麻烦。 记得前一段时间看到老外的一篇利用Apache的mod_rewrite模块和php结合实现网站图片水印的文章,今天受到此文章的启发我就想能不能利用同样的原理来实现将网站的所有图片都变成黑白的呢?经过今天的实验,我成功了!证明我的想法是正确的!下面就介绍一下如何利用apache或者nginx与php的结合来实现黑白版的网页。 首先修改网站的apache配置文件(.htaccess也行)或者nginx的配置文件: Apache: RewriteEngine On RewriteCond %{REQUEST_FILENAME} -f RewriteRule \.(gif|jpeg|jpg|png)$ img_to_black_write.php [QSA,NC] Nginx(在server中加入): if (!-f $request_filename) { rewrite ^(.*)\.(jpg|png|gif)$ /img_to_black_write.php; } 这里是img_to_black_write.php的代码 < ?php $file = $_SERVER[’DOCUMENT_ROOT’] . $_SERVER[’REQUEST_URI’]; $im = imagecreatefromstring(file_get_contents($file)); if (imageistruecolor($im)) { imagetruecolortopalette($im, true, 256); } $total_colors = imagecolorstotal($im); for ($i = 0; $i < $total_colors; $i++){ $rgb = imagecolorsforindex($im, [...]
今天在PHP官网(http://www.php.net)上面查询number_format函数的时候发现了一小段代码,虽然很短,但是我觉得很有用,最主要的是我受到了很多启发,下面把那段代码贴出来以便共享,:) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 < ?php function format_filesize($number, $decimals = 3, $force_unit = false, $dec_char = ‘,’, $thousands_char = ‘ ‘) { //string format_filesize(int(0,) $number, (bool(0), int(0,4)) $force_unit, int $decimals, char $dec_char, char $thousands_char) //format a filesize $number with unit (setted by $force_unit(see [...]
刚刚完成了上次写的图片转换器的改变大小的功能,如果还有什么需要赶紧的希望大家指出来,以方便尽我的能力对其进行改进(这是我没事写着玩的,:),纯属兴趣),网址:http://www.firestudio.cn/home/imageConverter.php
我昨天晚上写了一个图片转换的小程序(没有完成),刚刚把它搞定,很简单的一种,现丑了,呵呵~。其中包括从彩色到黑白的转换,图片质量的改变,是否交错 以及图片格式的转换(PNG, GIF和JPEG格式之间的转换)。下个星期我准备再对它进行完善一点,加点功能(比如调整大小)。有兴趣的朋友可以试一下给点意见。 图片转换器地址:http://www.firestudio.cn/home/imageConverter.php
