当在一个php文件中,出现了两个querylist的时候,可能就存在着一定的冲突风险了。本文中,苏南大叔主要描述的就是:如何获取querylist的单一实例。大家如何使用phpquery的时候,也一定要注意这一点。和普通的php类库的概念是有所区别的。phpqueryquerylist在实例处理这方面,是很奇怪的。大家需要仔细想清楚。

苏南大叔: QueryList 如何获取多个实例? - 多实例
QueryList 如何获取多个实例?(图1-1)

静态方法getInstance()

静态方法getInstance(),用于获取QueryList单一实例。此方法获取到的是全局共享的单一QueryList实例,意味着如果涉及到想要多QueryList共存的场景,就需要通过new QueryList()的方式来获取QueryList实例。QueryList内置的所有静态方法都是调用getInstance()方法获取的QueryList实例。

也就是说,默认情况下,这个QueryList只有一个实例。那么,如果需要在一个php程序中,同时处理两个抓取逻辑的话,可能就存在着变量相互混淆的情况了。

总结

如果没用特殊的new操作,一个querylist在一个php文件中,仅仅存在着一个实例,这点上和phpquery是非常类似的。如果用到多个抓取操作,同时存在于一个php代码中,就一定要注意操作:

(new QueryList)

好,更多querylist抓取数据的经验文章,请点击苏南大叔的博客链接。

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留链接作者。
本站采用创作共用版权协议, 要求署名、非商业用途和相同方式共享。
转载本站内容必须也遵循“署名-非商业用途-相同方式共享”的创作共用协议。
未经许可,规模化镜像抄袭本站内容的行为,将会根据有关法律法规进行维权。
程序如此灵动~》下所有原创文章,如被用于商业用途,请您按规定支付稿费。

 【加群】加入QQ群【175454274】和大家一起讨论这个问题

 【源码】本文代码片段及相关软件,请点此获取

 【绝密】秘籍文章入口,仅传授于有缘之人   querylist

本站的忠实读者小伙伴,正在阅读下面这些文章: