我正在使用 PHRETS 的第 2 版,在遍历列表 ID 时,我需要下载图像。并非所有列表都有图像。在之前的版本 1 中,有一个if ($photo['Success'] == true)选项
这是我在函数中的 php 代码。我注意到 getContentType() 将显示application/xml;charset=utf-8用于没有图像的列表,而image/jpeg用于有图像的列表。另外,$photos->first()->getObjectId(); 对于没有图像的列表,将为空白。鉴于此信息,我想我可以编写一个简单的条件来检查。但我的问题是,有没有官方的方法可以做到这一点?
function downloadImages($ListingKey,$rets){
$photos = $rets->GetObject('Property','Photo',$ListingKey);
echo $photos->first()->getContentId();
echo $photos->first()->getObjectId();
echo $photos->first()->getContentType();
echo $photos->first()->getContentDescription();
echo $photos->first()->getContentSubDescription();
echo $photos->first()->getSize();
echo $photos->first()->isPreferred();
echo $photos->first()->getLocation();
}
这是我目前的条件检查
function downloadImages($listingKey,$rets){
$photos = $rets->GetObject('Property','Photo',$listingKey);
if($photos->first()->getContentType()=='image/jpeg'){
mkdir('/home/server/public_html/img/'.$listingKey,0777);
foreach ($photos as $p) {
file_put_contents('/home/server/public_html/img/'.$listingKey.'/'.$p->getContentId().'-'.$p->getObjectId().'.jpg',$p->getContent());
}
}
}