как добавить переменную php в url name; не в ссылке URL

<?php echo "<a href=$url[0]>...</a>"; ?> 

Хорошо. Как добавить значение массива в пунктирном месте? Я хочу показать '0' как имя URL-адреса, которое не является фиксированным. Заранее спасибо.

Просто распечатайте их –

 echo "<a href='" . $url[0] . "'>" . $url[0] . "</a>"; 

Или

 echo "<a href='$url[0]'>$url[0]</a>"; 

«Оптимизации», приведенные здесь, несколько неверны.

Давайте посмотрим на следующий код:

 <?php $var = 'a'; $runs = 1000000; ob_start(); $double = microtime(true); for($i=0; $i<$runs; $i++) { echo "string{$var}string{$var}string{$var}string{$var}"; } $double = microtime(true) - $double; $singleConcat = microtime(true); for($i=0; $i<$runs; $i++) { echo 'string'.$var.'string'.$var.'string'.$var.'string'.$var; } $singleConcat = microtime(true) - $singleConcat; $singleSequence = microtime(true); for($i=0; $i<$runs; $i++) { echo 'string', $var, 'string', $var, 'string', $var, 'string', $var; } $singleSequence = microtime(true) - $singleSequence; ob_clean(); ?> <p>Double quotes: <?php echo $double; ?></p> <p>Single quotes concatenated: <?php echo $singleConcat; ?></p> <p>Single quotes sequenced: <?php echo $singleSequence; ?></p> 

Мои результаты:

 Double quotes: 0.26701784133911 Single quotes concatenated: 0.2887818813324 Single quotes sequenced: 0.32703709602356 

Теперь это немного странно, почему бы так? Это особенно странно, поскольку общая мудрость заключается в том, что одинарные кавычки быстрее.

Причина этого в том, что PHP вынужден создавать тонны анонимных объектов.

Код 'string'.$var.'string'.$var.'string'.$var.'string'.$var не означает «взять все эти строки и объединить их вместе», а означает «принять первой строкой и соединить ее со вторым, затем взять результат и связать его с третьим и т. д. ».

Это заставляет PHP фактически выполнять больше работы в этом процессе.

 <?php $var = 'a'; $runs = 1000000; ob_start(); $double = microtime(true); for($i=0; $i<$runs; $i++) { echo "string{$var}"; } $double = microtime(true) - $double; $singleConcat = microtime(true); for($i=0; $i<$runs; $i++) { echo 'string'.$var; } $singleConcat = microtime(true) - $singleConcat; $singleSequence = microtime(true); for($i=0; $i<$runs; $i++) { echo 'string', $var; } $singleSequence = microtime(true) - $singleSequence; ob_clean(); ?> <p>Double quotes: <?php echo $double; ?></p> <p>Single quotes concatenated: <?php echo $singleConcat; ?></p> <p>Single quotes sequenced: <?php echo $singleSequence; ?></p> 

И теперь результаты – это то, что мы ожидаем:

 Double quotes: 0.10352993011475 Single quotes concatenated: 0.085345029830933 Single quotes sequenced: 0.088818073272705 

Поэтому вопрос оптимизации становится не таким простым. Если у вас много переменных внутри вашей строки, то, во всяком случае, используйте двойные кавычки, если только один раз появляется переменная, и она появляется в начале или в конце, затем используйте одинарные кавычки + конкатенацию или одинарные кавычки + последовательный вывод.