我想使用 php 中的函数打印特定数量的用户选择的数学表。 我使用html制作一个表单,该表单将一个数字作为用户的输入,并打印该数字特定的数学表。 这是我的 HTML:
<div >
<form action="" method="post">
<h1>Enter A Number:</h1>
<input type="number" name="no"/>
<input type="submit" name="submit" value="Submit" />
</form>
</div>
这是PHP部分:
<?php
if(isset($_REQUEST['submit']))
{
$no = $_REQUEST['no'];
function table(){
for($i=1;$i<=10;$i++){
$tab = $no*$i;
echo $no." X ".$i." = ".$tab."<br />";
}
}
table();
}
问题是如何将用户输入传递给函数?
向函数添加一个参数,然后使用该参数传递该值
在尝试使用值之前检查用户是否输入了一个值也是一个好主意。
<?php
function table($no)
{
for($i=1;$i<=10;$i++){
$tab = $no*$i;
echo $no." X ".$i." = ".$tab."<br />";
}
}
if(isset($_REQUEST['submit'], $_REQUEST['no']))
{
table($_REQUEST['no']);
}
定义if
条件之外的table function
,如下例所示,并将$no
作为parameter
传递
if(isset($_REQUEST['submit']))
{
$no = $_REQUEST['no'];
table($no);
}
function table($no){
for($i=1;$i<=10;$i++){
$tab = $no*$i;
echo $no." X ".$i." = ".$tab."<br />";
}
}
您可以检查所需的输出
您可以在函数中将$no声明为全局变量。
<?php
if(isset($_REQUEST['submit']))
{
$no = $_REQUEST['no'];
function table(){
global $no;
for($i=1;$i<=10;$i++){
$tab = $no*$i;
echo $no." X ".$i." = ".$tab."<br />";
}
}
table();
}
或者,您可以使用参数化函数,例如:
if (isset($_REQUEST['submit'])) {
$no = $_REQUEST['no'];
table($no);
}
function table($no)
{
for ($i=1;$i<=10;$i++) {
$tab = $no*$i;
echo $no." X ".$i." = ".$tab."<br />";
}
}
<?php
function table($no){
for($i=1;$i<=10;$i++){
$tab = $no*$i;
echo $no." X ".$i." = ".$tab."<br />";
}
}
if(isset($_POST['submit']))
{
$no = $_POST['no'];
table($no);
}
?>
-
您可以向函数添加参数,然后将该值传递给函数
function table($no){ for($i=1;$i<=10;$i++){ $tab = $no*$i; echo $no." X ".$i." = ".$tab."<br />"; } } table($no);
-
您还可以在函数中使用全局关键字来访问"$no">
function table(){ global $no; for($i=1;$i<=10;$i++){ $tab = $no*$i; echo $no." X ".$i." = ".$tab."<br />"; } } table();