我认为我拥有完成我想要做的所有事情,我只是不知道如何将它们结合起来。有人可以告诉我在哪里以及如何让它工作? 这就是我想要的和我拥有的:
我创建了两个我认为代表我想要做的功能:
一个接受2个,3个或4个参数的函数,并返回所提供参数的总和和平均值。
将任何句子字符串作为参数的函数。该函数报告字符串的长度和字符串中的单词数。如果这些单词存在于字符串中,该函数将“cat”和“dog”替换为“meow”和“bark”。修改后的字符串作为数组返回。如果找不到猫和狗,该函数应该返回消息字符串“你没有宠物”。
我希望这两个函数都用在第二个PHP文件中,该文件对第一个函数使用一些函数调用,而Redux用于获取第二个函数要检查的字符串。我想确保检测第二个函数返回的值是数组还是字符串。
这是我的代码:
第一个功能:
<?php
function sum($var1, $var2, $var3, $var4)
{
return $var1 + $var2 + $var3 + $var4;
}
function mean($var1, $var2, $var3, $var4)
{
return $var1 + $var2 + $var3 + $var4 / 4;
}
?>
第二功能:
<?php
function phptest($input) {
$search = array('meow', 'bark');
$replace = array('cat', 'dog');
$output = str_ireplace($search, $replace, $input, $replace_count);
if ($replace_count === 0) {
return false;
} else {
return explode(' ', $output);
}
}
$result = phptest($input_string);
if ($result === false) {
echo 'You have no pets';
} else {
var_dump($result);
}
?>
页面我必须处理我的功能:
<?php
require('myfunctions.php');
?>
<form action="" method="post">
<input name="input" type="text" size="20" maxlength="20" />
<input name="submit" type="submit" value="submit" />
</form>
非常感谢!
答案 0 :(得分:1)
如果您希望您的功能可用于多个文件,那么您拥有的功能是正确的。将PHP函数放在'myfunctions.php'文件中,并在要使用它们的页面上要求它。然后你就可以像对待任何其他功能那样打电话给他们:
<?php echo sum(1,2,3,4); ?>
输出10。
答案 1 :(得分:1)
你的表单不需要php代码片段,它需要动作,即处理输入的脚本,即
<form action="doStuff.php" method="post">
然后在doStuff.php
文件中有类似
<?php
require_once('myfunctions.php');
// read the value enterd by the user into variable
$input = $_REQUEST['input'];
// call your function with the value
phptest($input);
?>
答案 2 :(得分:1)
如果您真的想要打动您的主人,请创建求和函数,使其接受任意数量的参数:
<?php
//THE FUNCTION
function summation()
{
$sum = 0;
for ($i=0; $i<func_num_args(); $i++) $sum+= func_get_arg($i);
return $sum;
}
//THE IMPLEMENTATION
echo summation(1,5,7); //echo's 13
echo summation(1,5,6,8) //echo's 20
?>
或者,您可以使用PHP的本机array_sum函数:
<?php
$a = array(2, 4, 6, 8);
echo array_sum($a); //echo's 20
?>
至于你的phptest()函数......我建议将它命名为不太宽泛的东西。进入草率的命名惯例是一个坏习惯;但它看起来很实用。
您可以在PHP's $_POST[] array中找到发布的信息。
答案 3 :(得分:0)
加载所需的php文件后(最好是require_once
,你没有全局代码,是吗?)你可以像访问本地定义的函数一样访问函数。
if (isset($_POST['input'])) {
phptest($_POST['input']);
} else {
/...
}
答案 4 :(得分:0)
myfunctions.php:
<?php
function sum($var1, $var2, $var3, $var4)
{
return $var1 + $var2 + $var3 + $var4;
}
function mean($var1, $var2, $var3, $var4)
{
return $var1 + $var2 + $var3 + $var4 / 4;
}
function phptest($input) {
$search = array('meow', 'bark');
$replace = array('cat', 'dog');
$output = str_ireplace($search, $replace, $input, $replace_count);
if ($replace_count === 0) {
return false;
} else {
return explode(' ', $output);
}
}
?>
页面你必须处理你的功能:
<?php
require('myfunctions.php');
if($_POST) {
$result = phptest($_POST['input']);
if ($result === false) {
echo 'You have no pets';
} else {
var_dump($result);
}
}
?>
<form action="" method="post">
<input name="input" type="text" size="20" maxlength="20" />
<input name="submit" type="submit" value="submit" />
</form>