重复 PHP 代码块

Duplicate PHP Code Block

我从特定 url 获取图像。使用此脚本,我可以毫无问题地在我的网站上显示它们。我从中获取图像的网站有超过一个(大约 200 个)页面我需要从中获取图像。

我不想手动复制PHP代码块,每次填写页码从1到200,是否可以一次完成?

赞:$html = file_get_html('http://example.com/page/1...to...200');

   <?php

require_once('simple_html_dom.php');
$html = file_get_html('http://example.com/page/1');
foreach($html->find('img') as $element) {
    echo '<img src="'.$element->src.'"/>';
}

$html = file_get_html('http://example.com/page/2');
foreach($html->find('img') as $element) {
    echo '<img src="'.$element->src.'"/>';
}

$html = file_get_html('http://example.com/page/3');
foreach($html->find('img') as $element) {
    echo '<img src="'.$element->src.'"/>';
}
?>

您可以像这样使用 for 循环:

require_once('simple_html_dom.php');
for($i = 1; $i <= 200; $i++){
    $html = file_get_html('http://example.com/page/'.$i);
    foreach($html->find('img') as $element) {
        echo '<img src="'.$element->src.'"/>';
    }
}

所以现在你有一个代码块,它将执行 200 次。

它通过将$i的值追加到url来改变页码,每循环完成一轮,$i的值就变成$i + 1.

如果您希望从更高的页码开始,只需将 $i = 1 的值更改为 $i = 2 或任何其他数字,您可以将 200 更改为无论您的情况的最大值是多少。

首先,将它们存储在数据库中。您可以(/应该)将图像下载到您自己的服务器,或者也将 uri 存储到图像。您可以为此使用 之类的代码或类似的代码,但打开 200 页并解析它们的 HTML 需要很长时间。每次浏览量。

然后您只需在查询中使用 LIMIT 功能自行创建页面。

无论如何我推荐这种方法,因为这比每次有人打开此页面时解析 html 快得多。你将有排序选项和其他专业的数据库给你。

有很多好的解决方案,其中之一:尝试从 1 到 200 循环

for($i = 1; $i <= 200; $i++){
    $html = file_get_html('http://example.com/page/'.$i);
    foreach($html->find('img') as $element) {
        echo '<img src="'.$element->src.'"/>';
    }
}
 <?php
function SendHtml($httpline) {
    $html = file_get_html($httpline);
foreach($html->find('img') as $element) {
    echo '<img src="'.$element->src.'"/>';
}
}


for ($x = 1; $x <= 200; $x++) {
 $httpline="http://example.com/page/";
 $httpline.=$x;
 SendHtml($httpline);
}

?>

只是循环。创建一个发送函数并循环进行调用。 我建议您阅读 https://www.w3schools.com/php/default.asp

中的所有 php 文档