0%

Somewhere there are still peoples and herds, but not with us, my brothers: here there are states.

A state? What is that? Well! open now your ears to me, for now I will speak to you about the death of peoples.

阅读全文 »

定义

getimagesize - 获取图片尺寸

语法

1
getimagesize ( string $filename [, array &$imageinfo ] ) : array

返回一个 关联 数组,包含指定图片的相关信息。
$filename 可以是本地也可以是远程图片。
$imageinfo 用于获取更多扩展信息,只支持 JFIF 文件。

返回值

返回数组中最多可以包含7个元素,分别如下:

索引 01分别是宽度和高度;
索引 2是图片的类型,是格式如 IMAGETYPE_XXX 的预定义常量之一,如IMAGETYPE_GIF, IMAGETYPE_JPEG, IMAGETYPE_PNG, IMAGETYPE_BMP;
索引 3 是宽高的拼接好的字符串,如height=”yyy” width=”xxx”,方便直接用在img标签里;
mime 是对应的MIME 类型,可用于http头信息,如 header("Content-type: {$size['mime']}");;

channels will be 3 for RGB pictures and 4 for CMYK pictures.
bits is the number of bits for each color.


示例

1
2
3
4
$image = 'https://avatars2.githubusercontent.com/u/646129?s=52&v=4';
$data = getimagesize($image, $info);
print_r($data);
print_r($info);

输出

1
2
3
4
5
6
7
8
9
10
11
12
13
14
Array
(
[0] => 52
[1] => 52
[2] => 2
[3] => width="52" height="52"
[bits] => 8
[channels] => 3
[mime] => image/jpeg
)
Array
(
[APP0] => JFIF``
)

总结

一般常用于获取图片宽高,其他信息基本用不到。
名称是image size,但不知道返回的是图片的实际大小还是图片的尺寸,而且既然已经返回这么多信息了,为啥不返回图片的字节大小呢,虽然可以通过其他方式获取,但如果能一步到位岂不更省事。

Zarathustra’s eye had perceived that a certain youth avoided him. And as he walked alone one evening over the hills surrounding the town called “The Pied Cow,” behold, there he found the youth sitting leaning against a tree, and gazing with wearied look into the valley.

阅读全文 »

背景

在使用json_encode转换的时候,默认情况下中文会转换成 \u*** 的格式, 不仅不可读,还会在一定程度上增加传输的数据量.

1
2
3
<?php
echo json_encode("中文");
//"\u4e2d\u6587"

在PHP5.4, 这个问题得以解决, Json新增了一个选项: JSON_UNESCAPED_UNICODE,加上之后就可以正确输出中文。
详见鸟哥的文章,让Json更懂中文

总结

对这个选项的作用和用法都没有歧义,有点不同的是对这个组合词 JSON_UNESCAPED_UNICODE 的理解,鸟哥文章中说是”顾名思义,不要编码Unicode”,实际上并这里的意思并不明显,escape是避开,避免的意思,前面加上 un 表示否定,是不要避开不要避免,应该是说把Unicode当成本身处理,不要避开Unicode这种字符或格式,即承认它,再结合官网对这个选项的解释,(逐个字符的编码多字节Unicode字符)
Encode multibyte Unicode characters literally (default is to escape as \uXXXX).
,虽然最后结果是一样的,但从字义上其实很难一下子看出来。

Of all that is written, I love only what a man has written with his blood. Write with blood, and you will find that blood is spirit.

阅读全文 »