小编use*_*123的帖子

使用多卷曲获取所有网址

我正在开发一个应用程序,它从一组站点获取所有URL并以数组形式或JSON显示它.

我可以使用for循环,问题是我尝试10个URL时的执行时间,它给我一个错误说exceeds maximum execution time.

在搜索时我发现了这个 multi curl

我还发现了这个快速PHP CURL多个请求:使用CURL检索多个URL的内容.我试图添加我的代码,但没有工作,因为我不知道如何使用该功能.

希望你帮帮我.

谢谢.

这是我的示例代码.

<?php

$urls=array(
'http://site1.com/',
'http://site2.com/',
'http://site3.com/');


$mh = curl_multi_init();
foreach ($urls as $i => $url) {

        $urlContent = file_get_contents($url);

        $dom = new DOMDocument();
        @$dom->loadHTML($urlContent);
        $xpath = new DOMXPath($dom);
        $hrefs = $xpath->evaluate("/html/body//a");

        for($i = 0; $i < $hrefs->length; $i++){
            $href = $hrefs->item($i);
            $url = $href->getAttribute('href');
            $url = filter_var($url, FILTER_SANITIZE_URL);
            // validate url
            if(!filter_var($url, FILTER_VALIDATE_URL) === false){
                echo '<a href="'.$url.'">'.$url.'</a><br />';
            }
        }

        $conn[$i]=curl_init($url);
        $fp[$i]=fopen ($g, …
Run Code Online (Sandbox Code Playgroud)

php curl curl-multi

8
推荐指数
1
解决办法
1142
查看次数

删除数组中连续的重复项

我正在研究一个删除数组中重复项的函数。这个函数的问题是,如果连续重复项少于 5 个,它将保留,而上面的 5 个将成为一个数字。

我的问题是无法弄清楚逻辑。

希望你能帮我。

谢谢。

示例代码

function removeDuplicates($array){
        $result = array();
        $lastVal = null;
        $temp_array = array();
        foreach ($array as $key => $value) {
            # code...
            if($value != $firstVal){

                $result[] = $value;   

            }else{

                $temp_array[] = $value;

            }

            $lastVal = $value;

        }

        return $result;

    }
Run Code Online (Sandbox Code Playgroud)

样本

$array = array(1,2,4,1,1,1,1,0,8,7,2,0,0,8,8,8,8,8,8,8,2,4,1,5);
Run Code Online (Sandbox Code Playgroud)

预期结果

[1,2,4,1,1,1,1,0,8,7,2,0,0,8,2,4,1,5]
Run Code Online (Sandbox Code Playgroud)

php arrays duplicates

5
推荐指数
1
解决办法
237
查看次数

使用 break on click 停止循环

我有一个从 1 到 20 的简单循环。我想要做的是使用按钮单击停止循环。我所做的是,我设置了一个条件,即在单击按钮时变量的值stop将更改为 1,这将触发break. 但值没有改变。

var stop = 0;
for(let i = 1; i <= 20; i++){
  
  if(stop === 1){
    break;
  }
  
  setTimeout(function(){
    $('ul').append('<li>'+ i +'</li>');
  },i * 500);
}

$('button').click(function(){
    stop = 1;
});
Run Code Online (Sandbox Code Playgroud)
ul li{
  list-style-type: none;
  float: left;
}
Run Code Online (Sandbox Code Playgroud)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul></ul>

<br>
<button>stop</button>
Run Code Online (Sandbox Code Playgroud)

javascript jquery for-loop break

3
推荐指数
1
解决办法
611
查看次数

使用 .html() 不显示图标

我正在研究显示错误消息的简单表单,我的问题是当我尝试在警报消息上添加图标时,图标没有显示。我正在使用Feathericons来生成图标。

我制作了一个简单的片段,图标正常显示,但是当我使用 jquery 显示它时,它不起作用。

希望你能帮助我。

谢谢。

$(document).ready(function(){
   feather.replace();
   
   $('button').click(function(){
      $('.alert').html('<i data-feather="activity"></i>');
   });
  
});
Run Code Online (Sandbox Code Playgroud)
<script src="https://unpkg.com/feather-icons@4.10.0/dist/feather.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<button>show Icon</button>
<div class="alert"></div>
<hr>
<i data-feather="home"></i>
<i data-feather="alert-circle"></i>
<i data-feather="globe"></i>
Run Code Online (Sandbox Code Playgroud)

jquery icons svg

2
推荐指数
1
解决办法
9465
查看次数

将数组数据转换为对象

所以我有这个数组。

["2020-01-31 18:31:01", "2020-02-03 14:04:30", "2020-02-04 05:58:48", "2020-02-04 14:11:16"]
Run Code Online (Sandbox Code Playgroud)

我喜欢将它转换为对象。

0: {date: "2020-01-31", time: ["8:31:01"]}
1: {date: "2020-02-03", time: ["4:04:30"]}
2: {date: "2020-02-04", time: ["5:58:48", "14:11:16"]}
Run Code Online (Sandbox Code Playgroud)

但我得到了这个结果

0: {date: "2020-01-31", time: "8:31:01"}
1: {date: "2020-02-03", time: "4:04:30"}
2: {date: "2020-02-04", time: "5:58:48"}
Run Code Online (Sandbox Code Playgroud)

这是我的代码

var times = response.data.time;
var dates = [];
var t = [];
var d = '';
var newData = [];
times.forEach(time => {

   var da = time.substring(0, 10);
   var ti = time.substring(12, 19);

   if(d == da) { …
Run Code Online (Sandbox Code Playgroud)

javascript arrays json object

0
推荐指数
1
解决办法
51
查看次数

标签 统计

arrays ×2

javascript ×2

jquery ×2

php ×2

break ×1

curl ×1

curl-multi ×1

duplicates ×1

for-loop ×1

icons ×1

json ×1

object ×1

svg ×1