
Панда-бир!
   
Профиль
Группа: Участник
Сообщений: 4795
Регистрация: 3.2.2003
Где: Бамбуковый лес
Репутация: 44 Всего: 73
|
А теперь результат тестов! Opr, будешь смеятся, но функция in_array работает в 90 раз медленнее!!!  in_array - Исполнение подсчета вхождений IP при помощи первого способа занял 28.10576, всего вхождений 0. array_flip - Исполнение подсчета вхождений IP при помощи первого способа занял 0.29931, всего вхождений 0. код: | Код | <pre> <?php
require 'base_ip.php';
// Секундомеры function startTimer() { $mtime = explode (' ', microtime ()); return $mtime[1] + $mtime[0]; }
function endTimer($start) { $mtime = explode (' ', microtime ()); return round (($mtime[1] + $mtime[0] - $start), 5); }
// Глобальный цикл проверки вхождений полученных еще отку-да то IP адресов.
function isset_ip(&$ip) { global $duplicate_sets_ip; return (isset($duplicate_sets_ip[$ip])) ? true : false;
//global $sets_ip; //return (in_array($ip, $sets_ip)) ? true : false;
}
$result_count = 0;
$stime = startTimer();
// Создаем дупликат с значениями в ключах $duplicate_sets_ip = array_flip($sets_ip);
for($i = 0; $i < 20000; $i++) { // Генерируем случайный IP $ip = rand(1,254).'.'.rand(1,254).'.'.rand(1,254).'.'.rand(1,254); // Проверяем при помощи нашей функции if(isset_ip($ip)) $result_count++; }
$stime = endTimer($stime); echo "Исполнение подсчета вхождений IP при помощи первого способа занял $stime, всего вхождений $result_count.\r\n";
?>
|
-- base_ip.php | Код | <?php
$sets_ip = array( '10.154.144.215', '4.103.147.75', '135.190.252.244', '172.217.163.207', '12.113.223.81', '186.186.138.114', '85.113.248.170', '239.201.7.241', '37.126.9.193', '11.198.216.17', '58.91.205.87', '202.114.192.141', '86.196.10.43', '241.138.127.40', '56.124.122.251', '63.209.210.160', '159.67.224.139', '113.7.125.182', '77.213.253.153', '74.232.62.43', '1.247.145.227', '136.59.211.189', '122.104.91.46', '236.185.1.46', '122.229.27.54', '56.39.130.61', '191.50.143.186', '41.66.27.168', '12.13.122.126', '127.201.136.51', '29.52.155.64', '251.129.140.155', '180.106.178.190', '95.39.230.161', '146.110.128.188', '103.121.87.7', '118.254.195.247', '213.58.157.137', '32.223.61.50', '107.41.121.232', '79.205.171.41', '228.7.171.231', '196.137.208.158', '7.144.243.68', '65.211.108.82', '140.137.19.190', '130.107.62.4', '58.176.197.24', '74.18.5.114', '203.197.207.14', '88.133.129.96', '6.136.239.98', '107.135.117.139', '163.185.230.211', '69.214.158.180', '104.25.115.37', '164.53.188.156', '20.101.85.20', '75.97.146.2', '100.96.77.96', '245.28.221.165', '27.200.28.201', '104.35.95.71', '246.96.127.19', '96.57.213.165', '185.228.58.248', '157.29.4.131', '35.25.11.62', '224.142.166.158', '240.184.176.159', '234.79.127.184', '229.136.235.223', '122.29.79.143', '192.69.126.190', '80.184.211.228', '65.175.39.250', '44.225.206.120', '40.136.164.86', '205.90.1.11', '53.143.184.142', '244.223.40.90', '40.132.36.100', '99.53.5.39', '191.40.163.152', '214.23.88.51', '190.57.248.234', '17.70.224.60', '226.119.229.28', '207.132.96.4', '237.164.40.233', '213.144.149.73', '158.127.128.23', '224.42.65.203', '181.199.174.97', '178.19.34.78', '241.63.114.137', '11.9.248.141', '21.164.140.80', '168.203.134.75', '220.182.188.116', '76.30.137.70', '13.56.194.182', '181.189.194.64', '97.230.95.214', '165.108.241.246', '155.132.82.149', '218.230.214.45', '124.206.90.178', '23.240.50.159', '194.135.56.236', '25.74.195.18', '48.111.172.6', '160.175.75.65', '130.68.118.187', '110.226.135.237', '123.198.87.207', '66.165.59.216', '217.183.13.3', '218.181.36.194', '94.213.89.19', '250.210.4.106', '200.226.250.192', '97.190.152.143', '217.158.179.205', '203.57.163.242', '80.198.66.247', '253.2.228.85', '236.31.102.1', '181.214.28.116', '112.99.223.166', '179.123.10.18', '152.86.112.171', '182.172.108.236', '40.182.213.205', '128.45.6.198', '219.70.209.205', '207.186.148.94', '118.194.37.109', '102.23.217.115', '182.237.140.105', '2.1.149.198', '94.134.202.131', '99.57.134.25', '43.78.159.124', '75.126.109.40', '220.3.200.19', '121.146.11.180', '54.101.10.8', '172.53.30.128', '243.55.32.26', '166.37.103.74', '216.54.203.10', '38.35.166.208', '163.35.205.152', '234.237.155.214', '21.189.229.132', '183.72.7.27', '234.197.212.143', '73.239.167.92', '231.252.89.119', '97.165.63.91', '202.35.51.253', '190.42.140.216', '83.244.35.225', '34.60.79.148', '66.54.232.228', '76.155.73.77', '87.164.70.197', '250.10.56.196', '82.3.246.68', '240.70.220.186', '241.13.191.33', '236.16.247.237', '248.133.94.27', '174.40.73.32', '38.45.146.242', '245.78.144.15', '57.193.29.105', '132.66.141.124', '240.5.188.62', '24.194.2.40', '16.181.51.49', '113.147.169.208', '84.148.63.2', '81.113.73.57', '127.97.161.111', '118.30.158.30', '80.219.26.60', '162.87.106.65', '134.196.103.39', '148.222.107.99', '226.219.76.237', '12.117.98.66', '38.224.134.85', '200.216.16.159', '15.148.213.26', '141.202.51.59', '93.180.251.251', '23.11.139.211', '209.5.184.188', '39.89.218.44', '45.65.202.27', '124.116.223.2', '46.44.242.214', '215.31.91.21', '147.132.240.177', '248.23.13.39', '33.12.133.106', '161.29.179.244', '147.128.111.192', '142.239.17.67', '171.163.111.117',
'130.82.227.206', '43.53.70.72', '60.3.236.88', '206.242.177.247', '124.191.235.159', '90.160.116.70', '2.76.161.101', '138.250.76.242', '141.102.204.104', '34.195.249.188', '222.205.46.106', '221.186.63.102', '182.68.133.41', '128.160.216.171', '211.135.146.102', '201.51.137.81', '247.90.22.225', '120.52.16.19', '225.121.206.91', '77.99.44.179', '81.167.125.146', '8.128.157.241', '8.163.226.72', '104.75.38.142', '194.46.189.60', '47.131.132.73', '69.6.206.45', '28.234.120.224', '76.234.214.220', '237.64.194.24', '153.159.147.11', '103.67.35.171', '236.224.198.117', '70.179.89.94', '8.113.48.222', '74.83.37.238', '166.16.143.7', '53.222.71.30', '140.123.164.171', '197.27.127.169', '120.117.48.143', '188.194.141.84', '42.188.240.112', '216.154.50.220', '98.19.167.17', '219.95.44.4', '222.55.22.46', '132.209.60.135', '99.232.247.137', '147.178.35.42', '172.232.18.225', '199.193.158.170', '124.245.33.249', '225.190.112.200', '146.210.229.143', '163.106.89.69', '173.61.34.99', '201.130.24.223', '143.243.146.52', '23.201.107.88', '246.186.248.195', '73.253.22.110', '164.78.23.208', '34.225.213.226', '89.112.169.29', '97.51.108.117', '209.223.115.102', '196.177.151.229', '209.94.51.109', '17.31.27.243', '24.169.167.242', '1.58.178.97', '99.132.146.181', '87.193.33.234', '117.171.179.119', '211.121.37.84', '13.225.202.246', '55.31.127.90', '233.229.152.243', '64.113.238.190', '205.120.218.48', '173.50.54.65', '119.88.85.105', '67.33.18.161', '167.70.195.97', '189.253.68.159', '30.2.232.213', '221.136.139.251', '152.76.132.137', '101.129.169.118', '217.226.85.59', '18.168.94.206', '162.137.29.170', '164.189.104.197', '175.252.153.152', '220.128.136.26', '195.254.140.195', '123.177.126.140', '157.79.181.236', '65.17.12.220', '252.173.212.211', '234.93.236.202', '162.216.170.58', '60.88.228.24', '78.147.244.220', '241.192.179.130', '191.154.119.126', '206.88.24.202', '183.176.237.221', '145.220.209.176', '244.148.28.187', '249.17.161.244', '57.7.190.214', '200.176.72.88', '67.198.151.239', '189.128.132.152', '209.148.103.199', '152.61.23.119', '167.49.235.30', '26.167.190.179', '131.91.230.176', '1.128.61.14', '38.210.25.66', '13.135.81.70', '77.88.64.145', '254.124.187.29', '186.172.29.95', '151.32.60.81', '47.142.112.106', '150.49.145.163', '104.189.248.116', '187.111.126.211', '40.251.120.60', '197.156.191.162', '46.9.173.128', '118.119.25.206', '58.161.89.5', '141.191.71.26', '12.138.58.133', '201.55.11.66', '99.128.18.196', '236.156.37.9', '1.68.158.130', '181.174.85.45', '163.149.161.126', '227.48.91.111', '14.54.218.119', '57.222.246.143', '252.227.10.47', '115.124.232.78', '51.96.238.100', '84.198.241.106', '111.105.74.215', '154.127.207.164', '112.193.218.73', '8.103.68.188', '247.40.98.120', '90.60.15.115', '197.91.159.38', '83.190.237.136', '153.30.83.18', '177.175.164.186', '52.46.60.250', '55.206.240.202', '83.75.28.162', '160.218.147.121', '184.55.176.199', '177.150.75.133', '37.176.187.44', '41.190.216.176', '86.121.252.140', '196.23.252.184', '14.79.52.171', '72.91.120.95', '12.242.34.74', '112.78.9.99', '16.37.132.37', '254.174.110.134', '216.164.30.253', '179.62.106.134', '41.51.172.149', '79.186.188.37', '189.142.241.171', '143.229.37.34', '90.120.172.253', '54.126.99.60', '187.176.158.80', '3.70.55.52', '163.245.133.96', '181.249.97.202', '208.11.35.236', '15.94.161.190', '5.172.54.184', '204.47.183.208', '253.156.127.130', '177.46.100.193', '126.154.189.10', '124.27.102.80', '68.102.179.15', '236.181.126.61', '16.191.31.82', '195.189.108.71', '160.104.191.147', '191.244.239.48', '184.30.87.147', '162.27.202.181', '23.161.164.17', '44.236.186.154', '122.179.103.203', '27.46.129.156', '163.20.97.133', '47.156.220.125', '83.129.80.252', '42.249.143.251', '73.189.244.241', '201.5.88.215', '69.135.17.38', '208.125.245.210', '7.159.97.87', '252.37.43.170', '78.197.168.71', '17.185.180.34', '219.185.165.179', '200.251.85.245', '111.60.25.95', '231.173.202.231', '200.12.193.10', '45.140.214.184', '168.232.97.112', '87.89.57.40', '206.149.182.86', '40.211.177.243', '249.206.129.121', '94.188.254.221', '235.87.131.154', '186.211.227.166', '100.236.122.122', '252.216.30.14', '34.81.40.215', '229.140.110.209', '228.67.75.115', '53.172.148.179', '111.130.163.13', '169.251.80.116', '126.208.242.100', '5.57.99.210', '211.235.247.58', '6.36.138.143', '48.150.115.77', '108.124.137.106', '82.142.37.94', '247.4.30.35', '248.148.203.46', '107.120.8.120', '230.104.41.123', '132.155.8.45', '218.201.251.7', '3.45.221.254', '148.122.6.143', '167.234.74.175', '211.56.5.214', '50.152.13.253', '90.195.185.156', '99.242.227.170', '228.221.228.160', '248.187.146.117', '55.70.70.161', '181.178.214.30', '15.187.156.97', '89.152.113.100', '45.1.170.158', '161.43.33.9', '80.209.46.26', '80.44.167.202', '58.241.229.147', '37.91.195.107', '169.32.149.202', '222.120.54.169', '95.28.250.128', '64.67.189.70', '27.165.213.116', '8.123.28.1', '156.125.230.101', '242.226.17.153', '164.99.237.21', '197.56.90.207', '241.24.171.66', '63.59.186.100', '70.89.222.173', '30.171.240.23', '95.232.72.23', '35.75.188.166', '254.135.167.63', '14.214.222.212', '228.242.188.227', '157.19.24.98', '207.236.72.198', '148.186.38.13', '130.53.9.168', '176.146.201.148', '185.139.191.72', '179.87.195.186', '56.174.46.101', '92.201.211.64', '186.97.17.192', '107.170.185.225', '5.97.42.27', '159.185.55.98', '211.111.57.50', '186.182.9.128', '233.75.253.198', '123.98.240.252', '6.180.57.154', '161.123.174.151', '230.108.170.108', '237.193.4.17', '79.51.18.250', '34.245.173.39', '252.198.47.10', '249.217.109.154', '176.231.193.85', '57.43.4.46', '43.88.139.157', '157.169.48.157', '42.213.74.165', '231.23.177.172', '111.35.191.43', '216.50.74.25', '187.251.170.237', '48.186.184.163', '204.36.203.175', '171.113.188.12', '101.90.226.47', '15.23.23.19', '67.94.176.45', '24.105.135.118', '38.239.242.104', '134.42.204.248', '207.207.108.161', '27.25.169.89', '254.189.219.152', '149.245.219.88', '117.121.2.15', '181.129.36.180', '240.195.156.193', '61.122.66.47', '51.91.109.115', '232.160.245.135', '249.2.53.226', '124.181.1.125', '8.117.177.207', '180.120.33.209', '28.119.164.250', '84.169.23.69', '244.198.205.37', '25.9.162.148', '85.38.236.13', '194.85.133.131', '249.81.194.114', '20.80.125.207', '166.12.14.22', '201.185.76.58', '24.20.142.182', '166.80.175.130', '16.41.7.23', '106.212.106.105', '77.13.52.242', '209.9.58.173', '145.127.213.16', '161.168.223.17', '154.63.175.41', '149.120.29.80', '43.13.126.1', '112.53.174.47', '1.168.5.85', '240.159.87.107', '219.210.254.232', '215.121.212.197', '125.75.49.122', '227.127.232.253', '165.207.88.201', '214.116.83.212', '19.37.53.151', '112.24.211.10', '134.7.136.162', '110.41.42.91', '191.55.18.171', '147.103.22.139', '128.116.144.115', '157.148.88.90', '133.128.197.184', '79.111.176.134', '145.27.112.60', '101.184.221.208', '99.3.82.189', '161.48.162.248', '186.247.41.252', '196.148.188.191', '88.187.181.186', '141.166.236.227', '251.14.185.181', '187.40.242.39', '102.173.241.175', '17.214.143.72', '85.92.34.103', '76.116.129.6', '139.215.8.156', '45.190.137.35', '198.224.98.16', '115.120.104.93', '200.58.242.129', '223.95.219.117', '80.159.122.176', '51.52.166.44', '30.210.183.94', '43.182.134.64', '240.149.107.74', '137.167.61.114', '139.165.84.51', '15.198.137.131', '170.194.52.217', '121.210.43.50', '17.174.200.254', '137.142.226.62', '124.41.211.99', '1.183.113.104', '173.240.21.196', '157.15.149.112', '102.198.76.227', '32.83.16.24', '99.107.57.129', '73.70.159.28', '103.156.156.93', '214.166.7.62', '49.29.54.55', '139.54.3.63', '128.170.196.205', '39.178.85.220', '23.7.11.226', '103.221.188.216', '177.239.196.55', '14.119.250.242', '20.41.182.136', '218.62.206.235', '250.110.157.151', '141.241.248.130', '41.130.59.37', '229.86.58.119', '93.37.78.239', '164.39.80.137', '86.21.151.185', '137.38.251.122', '213.19.213.66', '84.19.253.9', '155.221.203.71', '196.173.23.244', '103.56.55.138', '155.182.5.254', '248.223.215.203', '152.236.136.231', '17.149.111.202', '122.19.99.110', '110.26.187.73', '4.228.83.83', '209.44.127.5', '241.38.26.85', '250.139.120.189', '7.148.117.54', '171.248.104.53', '2.241.40.179', '161.54.14.43', '162.252.239.144', '156.254.41.94', '168.118.142.138', '94.24.121.143', '213.29.193.99', '166.62.192.126', '231.177.76.217', '52.50.189.235', '160.243.235.173', '199.179.49.151', '191.165.99.160', '34.131.217.65', '5.132.111.113', '2.97.121.168', '47.81.208.222', '39.14.206.141', '254.203.73.171', '82.71.153.177', '55.181.151.150', '68.206.154.210', '147.203.123.95', '187.101.146.177', '213.208.181.196', '121.200.63.16', '190.132.7.137', '61.186.98.170', '14.164.45.108', '198.249.187.69', '129.243.231.45', '213.73.11.155', '219.49.249.138', '44.101.17.113', '220.28.35.71', '135.15.139.132', '68.117.33.34', '169.7.61.150', '208.250.180.217', '81.13.226.101', '67.112.159.49', '63.223.65.178', '92.147.159.228', '51.66.20.63', '218.37.118.183', '235.241.30.199', '127.226.225.104', '44.175.29.16', '11.144.164.182', '177.60.209.212', '59.234.124.99', '62.86.251.215', '208.180.43.46', '143.189.94.217', '142.171.111.213', '103.52.180.153', '49.144.9.29', '132.120.193.214', '121.35.184.192', '167.74.70.82', '41.36.63.131', '145.106.253.203', '252.83.91.36', '2.151.173.4', '183.112.205.98', '182.147.20.184', '25.59.86.253', '115.30.237.171', '222.116.179.184', '243.244.254.157', '203.218.168.81', '251.218.7.77', '158.48.241.135', '74.143.195.122', '23.51.83.28', '157.208.246.228', '244.163.136.206', '182.97.96.79', '249.67.85.95', '87.254.190.118', '228.206.119.141', '61.107.211.28', '117.11.175.26', '41.101.96.254', '108.179.189.195', '217.172.33.224', '137.138.98.77', '18.4.215.128', '139.79.92.115', '143.39.69.157', '53.193.108.246', '20.216.41.248', '67.162.82.153', '93.216.66.82', '120.177.206.27', '45.230.81.106', '146.174.160.57', '66.194.22.254', '83.90.136.181', '94.45.81.210', '122.115.71.80', '64.227.194.164', '198.185.155.199', '167.170.42.52', '248.237.70.222', '85.63.71.65', '209.209.6.83', '9.96.217.140', '17.35.155.228', '130.207.163.213', '117.161.199.86', '130.78.98.220', '191.15.74.100', '199.154.214.99', '176.42.225.208', '20.116.194.39', '8.178.81.91', '37.155.227.231', '132.105.85.195', '188.209.250.103', '230.15.174.201', '154.213.199.100', '238.97.32.47', '126.104.12.159', '94.34.101.176', '40.72.132.216', '242.18.66.18', '87.54.243.208', '109.237.115.16', '204.240.25.70', '142.121.187.108', '73.60.179.248', '21.114.217.230', '138.211.133.171', '193.152.142.63', '82.121.77.27', '84.173.152.54', '96.236.201.9', '141.112.184.138', '115.238.188.52', '44.161.174.251', '77.63.229.93', '239.1.59.77', '172.157.6.69', '154.77.30.60', '83.200.217.169', '235.72.22.135', '253.131.38.77', '162.177.226.241', '112.139.166.237', '127.72.72.59', '104.160.30.78', '66.204.3.33', '165.133.75.44', '170.1.209.101', '232.246.237.71', '121.160.120.199', '242.182.199.96', '110.112.180.9', '130.132.150.56', '73.45.71.230', '88.33.28.141', '200.151.238.36', '52.75.24.33', '175.113.109.125', '213.194.72.177', '188.119.129.181', '252.73.111.2', '175.108.234.140', '107.156.77.206', '72.16.107.192', '221.126.159.217', '71.33.193.20', '25.174.41.227', '107.95.173.68', '215.235.168.171', '118.140.239.19', '221.247.220.240', '39.103.72.63', '232.146.136.116', '62.176.118.137', '186.122.106.244', '122.40.59.177', '19.112.65.53', '156.140.85.120', '176.52.205.241', '101.159.133.156', '84.133.208.237', '148.32.139.222', '189.38.11.230', '232.206.40.254', '173.211.58.158', '36.108.26.189', '226.80.31.211', '5.182.34.217', '31.90.122.72', '75.112.1.21', '33.177.12.184', '183.87.116.45', '168.24.146.231', '11.44.63.226', '118.75.207.150', '4.174.31.247', '74.14.131.129', '98.159.212.43', '226.30.108.107', '229.190.33.59', '4.59.75.19', '81.202.194.232', '104.39.223.56', '98.134.123.245', '211.160.235.155', '215.175.10.33', '7.105.45.251', '117.7.46.41', '189.63.100.29', '247.75.167.206', '187.226.81.185', '33.62.56.211', '190.21.180.148', '174.158.158.245', '136.148.78.110', '100.46.154.245', '215.35.220.6', '253.170.235.148', '110.126.34.28', '63.213.85.145', '10.104.220.111', '229.111.147.171', '107.160.205.191', '178.54.103.164', '83.229.181.207', '101.234.145.59', '129.249.83.93', '189.78.209.47', '180.156.102.41', '124.31.231.66', '174.140.174.241', '97.30.147.50', '46.138.237.121', '44.11.150.192', '242.86.226.126', '156.165.174.172', '190.175.79.193', '115.174.156.182', '81.88.239.4', '112.228.33.159', '105.15.135.4', '83.11.250.38', '197.145.211.128', '218.220.234.11', '42.163.151.60', '201.30.177.14', '84.4.144.244', '222.141.14.236', '4.113.127.109', '217.233.191.108', '248.173.37.98', '122.244.135.72', '244.119.64.149', '129.110.38.67', '182.143.145.198', '173.21.90.28', '253.181.216.182', '191.169.227.145', '139.169.213.36', '121.235.132.102', '32.44.73.207', '151.157.249.88', '121.250.241.121', '219.124.8.41', '89.216.145.223', '8.74.105.151', '126.133.229.197', '215.195.224.100', '170.190.177.232', '15.173.48.78', '155.71.178.11', '107.195.20.23', '20.220.169.233', '173.200.78.125', '208.65.87.72', '150.124.158.66', '149.51.122.226', '228.156.195.36', '31.115.211.124', '90.235.128.227', '47.192.35.211', '180.41.146.67', '132.220.40.169', '180.20.186.254', '223.134.163.188', '28.109.184.217', '2.126.84.205', '168.242.77.146', '169.132.250.157', '28.105.56.231', '150.88.89.234', '52.139.56.156', '138.186.44.118', '178.29.14.111', '68.106.53.1', '87.218.122.32', '132.41.53.71', '225.136.60.110', '10.179.232.13', '19.226.21.27', '149.205.21.17', '169.172.194.228', '230.54.118.18', '102.163.7.141', '190.171.204.208', '9.136.160.211', '219.239.217.15', '82.28.81.120', '1.193.93.138', '1.28.214.59', '233.225.23.4', '212.75.242.218', );
?>
|
|