我使用的是Josh Fraser的RollingCurl.php
目前,这是我的Skript的输出:(由于每个网站的加载速度不同,每次的顺序都不同。)
array(17) { [0]=> string(6) "Google" [1]=> string(6) "Google" [2]=> string(6) "Google" [3]=> string(6) "Google" [4]=> string(73) "MSN Deutschland | Nachrichten, Sport, Wetter, Hotmail & Outlook Login" [5]=> string(30) "Microsoft - Official Home Page" [6]=> string(8) "��Ѷ��ҳ" [7]=> string(27) "百度一下,你就知道" [8]=> string(44) "WordPress.com: Create a Free Website or Blog" [9]=> string(71) "Blogger.com - Create a unique and beautiful blog. It’s easy and free." [10]=> string(9) "Wikipedia" [11]=> string(33) "Sign in to your Microsoft account" [12]=> string(7) "YouTube" [13]=> string(27) "Featured Content on Myspace" [14]=> string(12) "新浪首页" [15]=> string(12) "Yahoo! JAPAN" [16]=> string(35) "Twitter. Alles, was gerade los ist." }数字的瞬间,我将使用$url作为键,将其设置为关联数组。如下所示:
array(17) { [google]=> string(6) "Google" [msn]=> string(73) "MSN Deutschland | Nachrichten, Sport, Wetter, Hotmail & Outlook Login" ...我的观点:
<?php
$array = [];
// a little example that fetches a bunch of sites in parallel and echos the page title and response info for each request
function request_callback($response, $info) {
global $array;
// parse the page title out of the returned HTML
if (preg_match("~<title>(.*?)</title>~i", $response, $out)) {
$array[] = $out[1];
}
}
require("RollingCurl.php");
// top 20 sites according to alexa (11/5/09)
$urls = array("http://www.google.com",
"http://www.facebook.com",
"http://www.yahoo.com",
"http://www.youtube.com",
"http://www.live.com",
"http://www.wikipedia.com",
"http://www.blogger.com",
"http://www.msn.com",
"http://www.baidu.com",
"http://www.yahoo.co.jp",
"http://www.myspace.com",
"http://www.qq.com",
"http://www.google.co.in",
"http://www.twitter.com",
"http://www.google.de",
"http://www.microsoft.com",
"http://www.google.cn",
"http://www.sina.com.cn",
"http://www.wordpress.com",
"http://www.google.co.uk");
$rc = new RollingCurl("request_callback");
$rc->window_size = 20;
foreach ($urls as $url) {
$request = new RollingCurlRequest($url);
$rc->add($request);
}
$rc->execute();
var_dump($array);
?>发布于 2019-09-05 01:48:47
$array[$info["url"]] = $out[1];发布于 2019-09-05 02:22:06
PHP中的数组实际上是有序映射,键值可以是整数或字符串。如果在向数组添加值时没有指定键,PHP将默认使用索引键,例如0, 1, 2等。
当您将元素添加到像这样的数组中时,您并没有指定一个键,因为$array[] = $out[1];默认使用索引键。
如果您想使用关联关键字(例如名称),则需要在将其值添加到数组时指定关键字:$array[$somevalue] = $out[1]。在本例中,$somevalue将是您想要用作关键字的URL字符串,无论它来自何处。
但是,请注意,这些密钥需要是唯一的。如果您尝试向$array['google']添加值,而该键/值对已经存在,则新值将覆盖旧值。对于您的目的来说,这可能并不理想。
https://stackoverflow.com/questions/57792625
复制相似问题