Ниже у меня есть вызов функции, который дает одному из элементов списка класс active
(из Bootstrap), если текущее имя файла соответствует первому аргументу giveClassActive()
. У каждого элемента списка есть текст, который он будет показывать, ссылка на страницу для перенаправления и имя файла, который он проверяет. Только иногда значения $href
и $file
различаются, поскольку #
должно стать %23
. Итак, я хочу дать $href
значение по умолчанию $file
.
<?php
function giveClassActive($file, $href, $show) {
echo '<li class = "';
$filename = explode('/', $_SERVER['SCRIPT_NAME']);
$file_name = end($filename);
if ($file_name == $file) {
echo 'active';
}
echo '">';
echo '<a href = "' . $href . '">' . $show . '</a></li>';
}
giveClassActive('calculator #5.php', 'calculator %235.php', 'Calculator');
giveClassActive('contact.php', 'contact.php', 'Contact');
?>
У меня вопрос: как мне ссылаться на другой параметр в определении функции?
Я пытался
function giveClassActive($file, $href = $file, $show) {
и
function giveClassActive($file, $href = this.$file, $show) {
которые производят
Fatal error: Constant expression contains invalid operations in C:\Bitnami\wampstack-7.1.22-1\apache2\htdocs\LarryUllman\Chapter 3\includes\header.html on line 20
Примечание: вывод
Редактировать после постановки на удержание
Мой вопрос отличается от PHP-функции с переменной в качестве значения по умолчанию для параметра , поскольку этот вопрос не задает ссылку на параметр, а скорее на другую переменную.