Добавить до и после строки

$variable = 'for linebreak add 2 spaces at end'; 

Значение переменной меняется каждый раз.

Как добавить текст или html до и после этой строки?


Например, если мы хотим добавить '<div>' до и '</div>' , строка должна выглядеть так:

 $variable = '<div>for linebreak add 2 spaces at end</div>'; 

Решение Марко – это путь для простых случаев. Если вам нужно конкатенировать многие строки, говорят, что объединение массивов происходит намного быстрее.

 $string[]='<div>'; $string[]= $variable; $string[]='</div>'; $string = join('',$string); 
 $wrapped_variable = '<div>' . $variable . '</div>'; 

Я не уверен, что понимаю, чего ты хочешь. Это так?

 <?php function add_div($string){return '<div>'.$string.'</div>';} $variable = 'for linebreak add 2 spaces at end'; echo add_div($variable); // <div>for linebreak add 2 spaces at end</div> ?> 

Если это не так, скажем так, и я попробую снова в следующий раз, когда я заеду на эту страницу.

Каковы более быстрые способы?

1. Присоедините массивы?

1.1 Присоединить массивы (с отменой)

Код ниже:

 for($i=1;$i<1000;$i++){ $string[]='lorem_'; $string[]= $i; $string[]='_ipsum'; $string = join('',$string); var_dump($string); unset($string); } с for($i=1;$i<1000;$i++){ $string[]='lorem_'; $string[]= $i; $string[]='_ipsum'; $string = join('',$string); var_dump($string); unset($string); } 

генерировать эту среднюю производительность:

 .---------.----------------.--------------.--------------. | Version | System time(s) | User time(s) | Memory (MiB) | |---------|----------------|--------------|--------------| | 5.6 | 0.016 | 0.061 | 20.60 | | 7.0 | 0.009 | 0.010 | 16.69 | | 7.1 | 0.011 | 0.011 | 24.18 | | 7.2 | 0.003 | 0.017 | 19.41 | '---------'----------------'--------------'--------------' 

источник: https://3v4l.org/8YK1H/perf#output


1.2 Присоедините массивы (без сбоев)

Код ниже:

 for($i=1;$i<1000;$i++){ $string = []; $string[]='lorem_'; $string[]= $i; $string[]='_ipsum'; $string = join('',$string); var_dump($string); // unset($string); } 

генерировать эту среднюю производительность:

 .---------.----------------.--------------.--------------. | Version | System time(s) | User time(s) | Memory (MiB) | |---------|----------------|--------------|--------------| | 5.6 | 0.017 | 0.068 | 20.58 | | 7.0 | 0.012 | 0.013 | 16.13 | | 7.1 | 0.021 | 0.012 | 23.23 | | 7.2 | 0.013 | 0.010 | 17.65 | '---------'----------------'--------------'--------------' 

источник: https://3v4l.org/kU4QG/perf#output


2. Сокращенный оператор?

2.1 Стендовый оператор (с неустановленным)

Код ниже:

 for($i=1;$i<1000;$i++){ $string = 'lorem_'; $string .= $i; $string .= '_ipsum'; // $string = join('',$string); var_dump($string); unset($string); } с for($i=1;$i<1000;$i++){ $string = 'lorem_'; $string .= $i; $string .= '_ipsum'; // $string = join('',$string); var_dump($string); unset($string); } 

генерировать эту среднюю производительность:

 .---------.----------------.--------------.--------------. | Version | System time(s) | User time(s) | Memory (MiB) | |---------|----------------|--------------|--------------| | 5.6 | 0.012 | 0.059 | 20.60 | | 7.0 | 0.008 | 0.011 | 16.65 | | 7.1 | 0.014 | 0.012 | 24.22 | | 7.2 | 0.012 | 0.009 | 19.08 | '---------'----------------'--------------'--------------' 

источник: https://3v4l.org/cCoSC/perf#output


2.2 Стендовый оператор (без сбоев)

Код ниже:

 for($i=1;$i<1000;$i++){ $string = 'lorem_'; $string .= $i; $string .= '_ipsum'; // $string = join('',$string); var_dump($string); // unset($string); } 

генерировать эту среднюю производительность:

 .---------.----------------.--------------.--------------. | Version | System time(s) | User time(s) | Memory (MiB) | |---------|----------------|--------------|--------------| | 5.6 | 0.011 | 0.059 | 20.60 | | 7.0 | 0.008 | 0.011 | 16.70 | | 7.1 | 0.014 | 0.011 | 24.22 | | 7.2 | 0.010 | 0.010 | 19.33 | '---------'----------------'--------------'--------------' 

источник: https://3v4l.org/iKnaV/perf#output


3. Одна линия concat?

3.1. Конкатенация одной строки (с отменой)

Код ниже:

 for($i=1;$i<1000;$i++){ $string = 'lorem_' . $i . '_ipsum'; // $string .= $i; // $string .= '_ipsum'; // $string = join('',$string); var_dump($string); unset($string); } с for($i=1;$i<1000;$i++){ $string = 'lorem_' . $i . '_ipsum'; // $string .= $i; // $string .= '_ipsum'; // $string = join('',$string); var_dump($string); unset($string); } 

генерировать эту среднюю производительность:

 .---------.----------------.--------------.--------------. | Version | System time(s) | User time(s) | Memory (MiB) | |---------|----------------|--------------|--------------| | 5.6 | 0.015 | 0.066 | 20.60 | | 7.0 | 0.008 | 0.012 | 16.68 | | 7.1 | 0.014 | 0.014 | 24.23 | | 7.2 | 0.010 | 0.014 | 19.45 | '---------'----------------'--------------'--------------' 

источник: https://3v4l.org/tv4X0/perf#output


3.2. Конкатенация одной строки (без отмены)

Код ниже:

 for($i=1;$i<1000;$i++){ $string = 'lorem_' . $i . '_ipsum'; // $string .= $i; // $string .= '_ipsum'; // $string = join('',$string); var_dump($string); // unset($string); } 

генерировать эту среднюю производительность:

 .---------.----------------.--------------.--------------. | Version | System time(s) | User time(s) | Memory (MiB) | |---------|----------------|--------------|--------------| | 5.6 | 0.012 | 0.056 | 20.65 | | 7.0 | 0.008 | 0.008 | 16.69 | | 7.1 | 0.014 | 0.010 | 24.17 | | 7.2 | 0.007 | 0.011 | 19.39 | '---------'----------------'--------------'--------------' 

источник: https://3v4l.org/mF0YW/perf#output


Если объединить все результаты с помощью PHP-версии:

PHP 5.6

 .-------------.----------------.--------------.--------------. | Code | System time(s) | User time(s) | Memory (MiB) | |-------------|----------------|--------------|--------------| | 1.1 | 0.016 | 0.061 | 20.60 | | 1.2 | 0.017 | 0.068 | >> 20.58 | | |-- -- -- -- -- -|-- -- -- -- --|-- -- -- -- --| | (average) 1 | 0.0165 | 0.0645 | >> 20.59 | |-------------|----------------|--------------|--------------| | 2.1 | 0.012 | 0.059 | 20.60 | | 2.2 | >> 0.011 | 0.059 | 20.60 | | |-- -- -- -- -- -|-- -- -- -- --|-- -- -- -- --| | (average) 2 | >> 0.0115 | >> 0.059 | 20.60 | |-------------|----------------|--------------|--------------| | 3.1 | 0.015 | 0.066 | 20.60 | | 3.2 | 0.012 | >> 0.056 | 20.65 | | |-- -- -- -- -- -|-- -- -- -- --|-- -- -- -- --| | (average) 3 | 0.0135 | 0.061 | 20.625 | '-------------'----------------'--------------'--------------' 

PHP 7.0

 .-------------.----------------.--------------.--------------. | Code | System time(s) | User time(s) | Memory (MiB) | |-------------|----------------|--------------|--------------| | 1.1 | 0.009 | 0.010 | 16.69 | | 1.2 | 0.012 | 0.013 | >> 16.13 | | |-- -- -- -- -- -|-- -- -- -- --|-- -- -- -- --| | (average) 1 | 0.0105 | 0.0115 | >> 16.41 | |-------------|----------------|--------------|--------------| | 2.1 | >> 0.008 | 0.011 | 16.65 | | 2.2 | >> 0.008 | 0.011 | 16.70 | | |-- -- -- -- -- -|-- -- -- -- --|-- -- -- -- --| | (average) 2 | >> 0.008 | 0.011 | 16.675 | |-------------|----------------|--------------|--------------| | 3.1 | >> 0.008 | 0.012 | 16.68 | | 3.2 | >> 0.008 | >> 0.008 | 16.69 | | |-- -- -- -- -- -|-- -- -- -- --|-- -- -- -- --| | (average) 3 | >> 0.008 | >> 0.010 | 16.685 | '-------------'----------------'--------------'--------------' 

PHP 7.1

 .-------------.----------------.--------------.--------------. | Code | System time(s) | User time(s) | Memory (MiB) | |-------------|----------------|--------------|--------------| | 1.1 | >> 0.011 | 0.011 | 24.18 | | 1.2 | 0.021 | 0.012 | >> 23.23 | | |-- -- -- -- -- -|-- -- -- -- --|-- -- -- -- --| | (average) 1 | 0.016 | >> 0.0115 | >> 23.705 | |-------------|----------------|--------------|--------------| | 2.1 | 0.014 | 0.012 | 24.22 | | 2.2 | 0.014 | 0.011 | 24.22 | | |-- -- -- -- -- -|-- -- -- -- --|-- -- -- -- --| | (average) 2 | >> 0.014 | >> 0.0115 | 24.22 | |-------------|----------------|--------------|--------------| | 3.1 | 0.014 | 0.014 | 24.23 | | 3.2 | 0.014 | >> 0.010 | 24.17 | | |-- -- -- -- -- -|-- -- -- -- --|-- -- -- -- --| | (average) 3 | >> 0.014 | 0.012 | 24.20 | '-------------'----------------'--------------'--------------' 

PHP 7.2

 .-------------.----------------.--------------.--------------. | Code | System time(s) | User time(s) | Memory (MiB) | |-------------|----------------|--------------|--------------| | 1.1 | >> 0.003 | 0.017 | 19.41 | | 1.2 | 0.013 | 0.010 | >> 17.65 | | |-- -- -- -- -- -|-- -- -- -- --|-- -- -- -- --| | (average) 1 | >> 0.008 | 0.0135 | >> 18.53 | |-------------|----------------|--------------|--------------| | 2.1 | 0.012 | >> 0.009 | 19.08 | | 2.2 | 0.010 | 0.010 | 19.33 | | |-- -- -- -- -- -|-- -- -- -- --|-- -- -- -- --| | (average) 2 | 0.011 | >> 0.0905 | 19.205 | |-------------|----------------|--------------|--------------| | 3.1 | 0.010 | 0.014 | 19.45 | | 3.2 | 0.007 | 0.011 | 19.39 | | |-- -- -- -- -- -|-- -- -- -- --|-- -- -- -- --| | (average) 3 | 0.0085 | 0.0125 | 19.42 | '-------------'----------------'--------------'--------------' 

Вывод

  • Для системного времени более быстрый способ (0,003 секунды) – использовать массивы соединений (с неустановленными) в PHP 7.2.0 .

  • Для пользовательского времени более быстрый способ (0,003 секунды) – использовать коннекцию oneline без PHP 7.0.22 в PHP 7.0.22 .

  • Для использования памяти « самый ecomonical » (14.47 MiB) способ состоит в том, чтобы использовать массив соединений без PHP 7.0.14 в PHP 7.0.14 .