<?php
$main_domains = ['example.co.uk','example.com','example.org'];
$sub_domains = ['sub.example.com','ftp.example.org','ftp.example.co.uk','mail.example.com'];
$results = [];
array_walk(
$sub_domains,
function($subdomain) use ($main_domains, &$results) {
foreach ($main_domains as $domain) {
// or however you're checking
if (strpos($subdomain, $domain) !== false) {
$results[$domain][] = $subdomain;
}
}
}
);
var_dump($results);
- Output for 5.6.0 - 5.6.26, 7.0.0 - 7.0.20, 7.1.0 - 7.1.20, 7.2.0 - 7.2.33, 7.3.16 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.7
- array(3) {
["example.com"]=>
array(2) {
[0]=>
string(15) "sub.example.com"
[1]=>
string(16) "mail.example.com"
}
["example.org"]=>
array(1) {
[0]=>
string(15) "ftp.example.org"
}
["example.co.uk"]=>
array(1) {
[0]=>
string(17) "ftp.example.co.uk"
}
}
preferences:
164.77 ms | 404 KiB | 188 Q