3v4l.org

run code in 300+ PHP versions simultaneously
<?php //+ Jonas Raoni Soares Silva //@ http://jsfromhell.com class String{ public static function truncate($s, $l, $e = '...', $isHTML = false){ $i = 0; $tags = array(); if($isHTML){ preg_match_all('/<[^>]+>([^<]*)/', $s, $m, PREG_OFFSET_CAPTURE | PREG_SET_ORDER); foreach($m as $o){ if($o[0][1] - $i >= $l) break; $t = substr(strtok($o[0][0], " \t\n\r\0\x0B>"), 1); if($t[0] != '/') $tags[] = $t; elseif(end($tags) == substr($t, 1)) array_pop($tags); $i += $o[1][1] - $o[0][1]; } } return substr($s, 0, $l = min(strlen($s), $l + $i)) . (count($tags = array_reverse($tags)) ? '</' . implode('></', $tags) . '>' : '') . (strlen($s) > $l ? $e : ''); } } $sText = '<p>Ключевым элементом в области снижения влияния объектов производства на водные ресурсы является уменьшение забора воды и качество <i>очистительных</i> процедур.</p> <p>Для <strong>этих</strong> целей Группа «Газпром» проводит организационно-технические мероприятия, <img src="http://osb.loc/images/logo.jpg" alt="test" text> в частности по установке средств измерения расхода воды, а также установке и наладке запорно-затворной арматуры на своих предприятиях, что способствует существенной экономии водных ресурсов.</p> <p>Повышение эффективности действующих очистных сооружений и внедрение новых технологий очистки стоков позволяет обеспечить нормативное качество очистки сточных вод. Общая мощность очистных сооружений «Газпрома» в 2010 г. составила 153,263 млн куб. м. Половина нормативно очищенных стоков прошла очистку на сооружениях биологической очистки, 39% — механической очистки, 12% — физико-химической очистки сточных вод.</p>'; echo String::truncate( $sText, 150, ' ...'); //jo<... echo "\n\n\n"; echo String::truncate( $sText, 150, ' ...', true); //jo<i><b>n</b></i>... echo "\n\n\n"; echo String::truncate( $sText, 150, ' ...', false); //jo<i><b>n...

Here you find the average performance (time & memory) of each version. A grayed out version indicates it didn't complete successfully (based on exit-code).

VersionSystem time (s)User time (s)Memory (MiB)
5.6.280.0000.07720.91
5.6.210.0170.07320.55
5.6.200.0030.06718.19
5.6.190.0000.05320.48
5.6.180.0000.04320.49
5.6.170.0230.06020.54
5.6.160.0000.04320.44
5.6.150.0100.06718.20
5.6.140.0100.07018.22
5.6.130.0100.06018.19
5.6.120.0030.04020.99
5.6.110.0200.05721.11
5.6.100.0070.08021.05
5.6.90.0000.09021.00
5.6.80.0100.06020.30
5.6.70.4470.03720.44
5.5.350.0070.08020.45
5.5.340.0000.09017.94
5.5.330.0130.03320.44
5.5.320.0230.07720.29
5.5.310.0370.05720.33
5.5.300.0070.07318.04
5.5.290.0030.05717.95
5.5.280.0100.03720.76
5.5.270.0170.06720.97
5.5.260.0100.07020.77
5.5.250.0030.07020.60
5.5.240.0100.07720.29
5.4.450.0430.04043.94
5.4.440.0400.05343.92
5.4.430.0100.05343.90
5.4.420.0500.05043.90
5.4.410.0430.04343.89
5.4.400.0170.03743.86
5.4.390.0200.04343.81
5.4.380.0230.04318.79
5.4.370.0070.05318.63
5.4.360.0100.06018.70
5.4.350.0170.05318.73
5.4.340.0130.05318.66
5.4.320.0080.03712.52
5.4.310.0090.04012.53
5.4.300.0060.03612.53
5.4.290.0090.04012.52
5.4.280.0060.03512.42
5.4.270.0080.03812.42
5.4.260.0060.03712.42
5.4.250.0100.04012.42
5.4.240.0070.03812.42
5.4.230.0080.03512.41
5.4.220.0130.03412.41
5.4.210.0030.03812.41
5.4.200.0040.04512.41
5.4.190.0090.03512.41
5.4.180.0050.04112.41
5.4.170.0040.03812.42
5.4.160.0070.04012.41
5.4.150.0050.03812.41
5.4.140.0090.03412.09
5.4.130.0070.04112.08
5.4.120.0050.03512.04
5.4.110.0050.03612.03
5.4.100.0070.03412.03
5.4.90.0070.03612.04
5.4.80.0060.03712.04
5.4.70.0030.03812.03
5.4.60.0050.03612.03
5.4.50.0040.04512.03
5.4.40.0050.04012.02
5.4.30.0070.03512.02
5.4.20.0040.03712.02
5.4.10.0040.03812.02
5.4.00.0070.04011.51
5.3.290.0080.04012.80
5.3.280.0070.04712.72
5.3.270.0090.04112.73
5.3.260.0050.04212.73
5.3.250.0080.03712.73
5.3.240.0050.03812.73
5.3.230.0050.03912.72
5.3.220.0060.03912.69
5.3.210.0040.04212.69
5.3.200.0120.04012.68
5.3.190.0050.03812.69
5.3.180.0070.04412.69
5.3.170.0060.03712.69
5.3.160.0110.03212.69
5.3.150.0040.03912.69
5.3.140.0090.03412.68
5.3.130.0080.03612.68
5.3.120.0060.03812.67
5.3.110.0060.03912.68
5.3.100.0110.03912.16
5.3.90.0110.03912.14
5.3.80.0090.03812.13
5.3.70.0080.03712.13
5.3.60.0030.04012.12
5.3.50.0060.03712.07
5.3.40.0110.03512.07
5.3.30.0090.03212.03
5.3.20.0070.04111.80
5.3.10.0080.03311.77
5.3.00.0060.03611.75
5.2.170.0060.0299.26
5.2.160.0050.0299.26
5.2.150.0060.0319.27
5.2.140.0070.0289.26
5.2.130.0030.0319.22
5.2.120.0050.0289.22
5.2.110.0060.0319.23
5.2.100.0050.0309.22
5.2.90.0080.0279.23
5.2.80.0050.0329.22
5.2.70.0070.0319.21
5.2.60.0050.0309.17
5.2.50.0060.0349.14
5.2.40.0030.0339.12
5.2.30.0060.0359.09
5.2.20.0050.0299.09
5.2.10.0070.0268.98
5.2.00.0050.0338.84
5.1.60.0040.0258.12
5.1.50.0040.0258.11
5.1.40.0040.0258.10
5.1.30.0060.0328.45
5.1.20.0050.0318.47
5.1.10.0040.0268.20
5.1.00.0030.0278.19
5.0.50.0060.0186.68
5.0.40.0050.0176.54
5.0.30.0040.0316.35
5.0.20.0060.0176.32
5.0.10.0040.0196.30
5.0.00.0040.0306.30
4.4.90.0040.0174.78
4.4.80.0030.0154.75
4.4.70.0030.0154.75
4.4.60.0000.0184.75
4.4.50.0030.0154.77
4.4.40.0030.0254.71
4.4.30.0020.0164.76
4.4.20.0020.0174.84
4.4.10.0040.0154.85
4.4.00.0020.0314.75
4.3.110.0030.0204.67
4.3.100.0040.0194.67
4.3.90.0040.0144.63
4.3.80.0050.0294.59
4.3.70.0020.0154.63
4.3.60.0040.0214.63
4.3.50.0030.0194.63
4.3.40.0020.0264.54
4.3.30.0020.0163.30
4.3.20.0050.0133.28
4.3.10.0020.0263.24
4.3.00.0030.01343.79

preferences:
143.98 ms | 1386 KiB | 7 Q