summaryrefslogtreecommitdiff
path: root/Zend/tests/concat_003.phpt
blob: 53d8d2f9a4b290362c089343f89d273901a44ef5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
--TEST--
Concatenating many small strings should not slowdown allocations
--SKIPIF--
<?php if (PHP_DEBUG) { die ("skip debug version is slow"); } ?>
--INI--
memory_limit=256m
--FILE--
<?php

/* To note is that memory usage can vary depending on whether opcache is on. The actual
  measuring that matters is timing here. */

$time = microtime(TRUE);

/* This might vary on Linux/Windows, so the worst case and also count in slow machines. */
$t0_max = 0.3;
$t1_max = 1.0;

$datas = [];
for ($i = 0; $i < 220000; $i++)
{
    $datas[] = [
        '000.000.000.000',
        '000.255.255.255',
        '保留地址',
        '保留地址',
        '保留地址',
        '保留地址',
        '保留地址',
        '保留地址',
    ];
}

$t0 = microtime(TRUE) - $time;
var_dump($t0 < $t0_max);

$time = microtime(TRUE);
$texts = '';
foreach ($datas AS $data)
{
    $texts .= implode("\t", $data) . "\r\n";
}

$t1 = microtime(TRUE) - $time;
var_dump($t1 < $t1_max);

?>
+++DONE+++
--EXPECT--
bool(true)
bool(true)
+++DONE+++