Php 通过同一函数运行多个变量

Php 通过同一函数运行多个变量,php,arrays,oop,Php,Arrays,Oop,这是我第一次目瞪口呆地寻找我的答案。我一般都不会写帖子,因为网上有成千上万的帖子都是我的答案;当然,这也不例外。我在寻找答案时遇到的问题是,我甚至不太确定要搜索什么 下面的代码可以工作。这不是问题所在。我的问题是,如果我想运行一千次呢。当然,我不需要写这么多次这个完整的表达来获得想要的效果,是吗 我觉得这和数组有关,但我仍然处在这样一个点上:我今天理解数组,第二天它们是希腊语 但不管怎样,一个简单的问题,请发一篇长长的帖子。希望有人能帮我解决这个问题 这是PHP $firstname = $va

这是我第一次目瞪口呆地寻找我的答案。我一般都不会写帖子,因为网上有成千上万的帖子都是我的答案;当然,这也不例外。我在寻找答案时遇到的问题是,我甚至不太确定要搜索什么

下面的代码可以工作。这不是问题所在。我的问题是,如果我想运行一千次呢。当然,我不需要写这么多次这个完整的表达来获得想要的效果,是吗

我觉得这和数组有关,但我仍然处在这样一个点上:我今天理解数组,第二天它们是希腊语

但不管怎样,一个简单的问题,请发一篇长长的帖子。希望有人能帮我解决这个问题

这是PHP

$firstname = $validate->stripExcess($firstname);
$lastname = $validate->stripExcess($lastname);
$email = $validate->stripExcess($email);
$password1 = $validate->stripExcess($password1);
$password2 = $validate->stripExcess($password2);
这是整个页面:

<?php
session_start();
require("../classes/uservalidation.php");

$firstname = $lastname = $email = $password1 = $password2 = "";

if($_SERVER['REQUEST_METHOD'] == "POST") {

    $firstname = $_POST['fname'];
    $lastname = $_POST['lname'];
    $email = $_POST['email'];
    $password1 = $_POST['password'];
    $password2 = $_POST['verify'];

}

//create validation object
$validate = new userValidation;

//execite stripExcess method $vaidate
$firstname = $validate->stripExcess($firstname);
$lastname = $validate->stripExcess($lastname);
$email = $validate->stripExcess($email);
$password1 = $validate->stripExcess($password1);
$password2 = $validate->stripExcess($password2);

//
$returnValidate = $validate->register($firstname, $lastname, $email, $password1, $password2);

//check if the variable is an array -- (case when returnValidate has an error)
if (is_array($returnValidate)) {

    $url = $returnValidate[0];
    $errorMessage = $returnValidate[1];

    //echo $url;
    //exit();

}else{
    $url = $returnValidate;

    //echo $url;
    //exit();
}

//Set the form values to SESSION vairbale to pass around
$_SESSION['fname'] = $firstname;
$_SESSION['lname'] = $lastname;
$_SESSION['email'] = $email;
$_SESSION['password1'] = $password1;
$_SESSION['password2'] = $password2;

//redirect to the correct page based on validate results
header("Location: " . $url, true, 303);
?>

班级:

<?php
session_start();
require("../classes/uservalidation.php");

$firstname = $lastname = $email = $password1 = $password2 = "";

if($_SERVER['REQUEST_METHOD'] == "POST") {

    $firstname = $_POST['fname'];
    $lastname = $_POST['lname'];
    $email = $_POST['email'];
    $password1 = $_POST['password'];
    $password2 = $_POST['verify'];

}

//create validation object
$validate = new userValidation;

//execite stripExcess method $vaidate
$firstname = $validate->stripExcess($firstname);
$lastname = $validate->stripExcess($lastname);
$email = $validate->stripExcess($email);
$password1 = $validate->stripExcess($password1);
$password2 = $validate->stripExcess($password2);

//
$returnValidate = $validate->register($firstname, $lastname, $email, $password1, $password2);

//check if the variable is an array -- (case when returnValidate has an error)
if (is_array($returnValidate)) {

    $url = $returnValidate[0];
    $errorMessage = $returnValidate[1];

    //echo $url;
    //exit();

}else{
    $url = $returnValidate;

    //echo $url;
    //exit();
}

//Set the form values to SESSION vairbale to pass around
$_SESSION['fname'] = $firstname;
$_SESSION['lname'] = $lastname;
$_SESSION['email'] = $email;
$_SESSION['password1'] = $password1;
$_SESSION['password2'] = $password2;

//redirect to the correct page based on validate results
header("Location: " . $url, true, 303);
?>

我不知道你想要什么,但也许:

$values = array("firstname", "lastname", "email", "password1", "password2");
foreach($values AS $value) {
    $$value = $validate->stripExcess($$value);
}

对。如果有相当多的变量,可以使用变量数组。基本上,数组是PHP中非常常见的结构。当您从$\u get和$\u POST获得值时,您还可以使用数组。嵌套数组、对象数组、对象嵌套数组所有这些都在php中广泛使用


尝试使用var\u dump$\u GET和$\u POST(当您向服务器发送一些值时)并分析它们有值时是如何形成的。

应该有
$validate->stripOverse($$value)
。是的,对不起。。。编辑。。。这里的时间是凌晨4点44分:尽量不要发布你不确定的答案。你应该使用评论从OP获得你需要的所有信息。问题只是我的语言知识:)好的,我会发布更多。我大概得到了答案,但记得我说过的关于我自己和阵列的话。。。这是希腊的一天显然。。。我正在更新操作。谢谢。我感谢你的建议。这实际上有助于我理解。