首先,我的技能水平充其量只是一个霍比特人 - 相比大多数人(如果不是全部的话),我是一个新人。
我正在尝试制作一个函数,如果没有给出参数/值,将返回单个<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++;}
}
}
答案 0 :(得分:3)
要确保在没有值传递给函数时这是有效的,请设置默认值。
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/>
代码。