функция php для объявления имени и значения поля ввода

У меня есть некоторые заявления, как

echo "<input type='hidden' name='from21' value='$_POST[from21]'>";
echo "<input type='hidden' name='from22' value='$_POST[from22]'>";
echo "<input type='hidden' name='from23' value='$_POST[from23]'>";
echo "<input type='hidden' name='from24' value='$_POST[from24]'>";
echo "<input type='hidden' name='from25' value='$_POST[from25]'>";
echo "<input type='hidden' name='from26' value='$_POST[from26]'>";

Я хочу выполнить их через функцию вроде

function ddd($ed){
for ($i=1;$i<=6;$i++)
{
echo "<input type='hidden' name='from.$ed.$i' value='$_POST[from.$ed.$i]'>";//-----------(1)
}
}

После этого я буду вызывать функцию как
ддд ( ‘2’);

Но это дает ошибку. Должна быть некоторая проблема в (1). Какой должен быть правильный синтаксис.

0

Решение

Вы можете сделать это так:

<?php

function ddd($ed){
for ($i=1;$i<=6;$i++){
echo "<input type='hidden' name='from$ed$i' value='\$_POST[from$ed$i]'>";
}
}

ddd('2');

Знак доллара в $ _POST необходимо экранировать с помощью обратной косой черты, чтобы вы могли отображать его как есть.
Вы также должны удалить точки между $ ed и $ i.

Вот демонстрация.

0

Другие решения

Проблема с name='from.$ed.$i'. Вам нужно удалить точки или правильно соединить их name='from'.$ed.$i.' как говорит @aspirin в комментарии.

Надеюсь, поможет..:)

0

По вопросам рекламы [email protected]