Во-первых, мой уровень мастерства в лучшем случае — хоббит — я новичок по сравнению с большинством, если не со всеми вами.
Я пытаюсь создать функцию, которая будет возвращать один <br />
если параметр / значение не указано, иначе будет возвращено столько <br />
теги в качестве значения $num
равно.
Я пытаюсь создать эту функцию для:
A) Узнайте, как создавать функции
B) Я ненавижу печатать <br />
C) меня заинтересовала идея о функции, которую я придумал.
Так что, в идеале, в моем коде, если введите getBrT()
, он вернет один <br />
тег, если я наберу getBrT(1)
, он также вернет один <br />
тег, но если ввести getBrT(5)
, вернется пять <br />
теги.
Это не работает, как я надеялся, когда я печатаю getBrT()
, Всегда ли мне нужно вводить значение? Разве то, что я пытаюсь сделать, не возможно в рамках ограничений PHP?
Вот функция, как я ее построил:
function getBrT2($num){
//if num equals 'nothing', 1 break - easier to call/type in code repeatedly
if ($num = ''){
echo '<br /';
}else{
//if num equals 'something', breaks equal value
$i = 0; // initialize counter
while ($i < $num) {
echo '<br />'; // increment the counter
$i++;}
}
}
Чтобы убедиться, что это работает, когда в функцию не передается никакого значения, установите значение по умолчанию.
function getBrT2($num = 1) { // default value is 1
$num = (int) $num; // cast num to integer
if ($num < 1) { // if num is 0 or negative make it 1
$num = 1;
}
return str_repeat('<br/>', $num); // echo out as many <br/> as requested
}
echo getBrT2(1); // prints out "<br/>"echo getBrT2(5); // prints out "<br/><br/><br/><br/><br/>"echo getBrT2(); // prints out "<br/>"echo getBrT2(''); // prints out "<br/>"echo getBrT2('hello'); // prints out "<br/>"
Я сделал несколько улучшений в вашей функции.
0
, $num
является 0
или отрицательное число. Если так, мы делаем это 1
, str_repeat()
создать как можно больше <br/>
теги по желанию. Других решений пока нет …