Closed. This question is off-topic。它当前不接受答案。
                            
                        
                    
                
                            
                                
                
                        
                            
                        
                    
                        
                            想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
                        
                        5年前关闭。
                                                                                            
                
        
这是我得到的错误。


  解析错误:语法错误,意外的T_VARIABLE,预期为T_FUNCTION
  在/home/students/000313753/public_html/10065/php/lab2/lab2.php中
  121行


我的课

        class validate
        {
            public $errorArray;



                function userName($name)
                {
                    if ($_SERVER['REQUEST_METHOD'] == 'POST')
                    {
                        if(isset($name))
                        {
                            if(strlen($name) <= 5)
                            {
                                $this->$errorArray['name'] = 'The username must be 5 characters.';
                            }
                        }
                        else
                        {
                            $this->$errorArray['name'] = 'Username cannot be empty';
                        }

                    }
                }
                function validateEmail($email)
                {
                    if ($_SERVER['REQUEST_METHOD'] == 'POST')
                    {
                        if (!filter_var($email, FILTER_VALIDATE_EMAIL))
                        {
                            $this->$errorArray['email'] = 'Wrong email format.';
                        }
                    }
                }

                function validateYear($year)
                {
                    if ($_SERVER['REQUEST_METHOD'] == 'POST')
                    {
                        if (isset($year))
                        {
                            if ($year < 1000 || $year > 2100)
                            {
                                $this->$errorArray['year'] = 'Year must be a 4 digit number.';
                            }
                        }
                        else
                        {
                            $this->$errorArray['year'] = 'Year cannot be empty';
                        }
                    }

                function validateProvinces($provinces)
                {
                    if ($_SERVER['REQUEST_METHOD'] == 'POST')
                    {
                        if (isset($provinces))
                        {
                            if (empty($provinces))
                            {
                                $this->$errorArray['provinces'] = 'Please select one or more provinces';
                            }
                        }
                    }
                }

                function validateStatus($status)
                {
                    if ($_SERVER['REQUEST_METHOD'] == 'POST')
                    {
                        if (isset($status))
                        {
                            if (empty($status))
                            {
                                $this->$errorArray['status'] = 'Please select one or more items from status';
                            }
                        }
                    }
                }



        }
        //access class
        $validation = new validate()

        $validation->userName($_POST["name"]);
        $validation->validateYear($_POST["year"]);
        $validation->validateProvinces($_POST["provinces"]);
        $validation->validateStatus($_POST["status"]);
        $validation->validateEmail($_POST["email"]);




    ?>


我是一个初学者,我整整一天都在尝试调试。请不要仅仅解决我的代码,请向我解释为什么我的代码不起作用。

预先感谢您的任何帮助。

最佳答案

您在这里缺少右引号:

$validation = new validate()


应该:

$validation = new validate();

10-05 21:25
查看更多