作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想从 RETS 服务器下载所有属性(property) list ,包括所有照片 URL。我正在使用 DMQL2 和 PHRETS 库。属性和照片对象存储在 RETS 服务器的不同表中。
要获取所有照片,我知道我可以下载属性列表,然后遍历每个属性并检索每个属性的照片,如下所示:
$results = $rets->Search($resource, $class, $query);
foreach ($results as $r) {
$photos = $rets->GetObject('Property', 'Photo', $r->get('ListingID'), '*', 1);
foreach ($photos as $p) {
// Save the photo locations somewhere…
}
}
这非常慢,因为有成千上万的属性。
是否可以通过连接属性表和对象表(如 MySQL 中的 LEFT JOIN
)在单个查询中请求所有照片和属性?
或者,有没有一种方法可以在一个请求中下载所有 照片对象,这样我就可以使用它们的 ListingID 键将它们与属性相关联?
对于更快地获取所有数据还有其他建议吗?
最佳答案
部分可能,但目前无法在单个查询中下载整张照片和属性。
我们可以在一次查询中下载多个列表的图像。检查下面的示例查询。
$photos = $rets->GetObject("Property", "Photo", "12345,12346,12347", "*", 1);
foreach ($photos as $p) {
$listingId = $p['Content-ID']; // save photo based on each listingIds
//continue
}
这里我们可以提供逗号分隔的 listingIds 的第三个参数。因此,您可以将 listingIds 作为批处理传递。
注意: MLS 仍然保持提取速度。一些 MLS 板可能会根据要求临时增加带宽。在这段时间内尝试提取完整图像。
关于rets - 使用 DMQL2 查询 RETS 服务器时是否可以获取所有具有属性的照片位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59206487/
我是一名优秀的程序员,十分优秀!