我正在做一个处理"IPTC“图像的类,需要将一些值写入到数组中,如下面的示例所示;
[2#020] => Array //SUPPLEMENTAL_CATEGORY
(
[0] => SPORT
[1] => REAL MADRID
)
[2#025] => Array //KEYWORDS
(
[0] => value 1
[1] => value 2
[2] => value 3
)希望实现的例子;
$iptc = new Iptc('some_image.jpg');
$iptc->set('KEYWORDS', array(
'value 1',
'value 2',
'value 3'
));有人能帮我吗?
注意:我使用"iptcembed“在图像中写元标签。
谢谢!
发布于 2012-05-18 01:56:50
我甚至设法解决了这个问题,我将在这里分享我是如何做到的;
$val = array('keyword1', 'keyword2', 'keyword3');
$rec = 2;
$tag = 025;
if (is_array($val)) {
$source = '';
foreach($val as $item) {
$len = strlen($item);
$source .= chr(0x1c).chr($rec).chr($tag);
$source .= chr($len >> 8).
chr($len & 0xff).
$item;
}
return $source;
}结果
Array
(
[0] => keyword1
[1] => keyword2
[2] => keyword3
)拥抱!
https://stackoverflow.com/questions/10627688
复制相似问题