我在编程方面比较新.我试图捕捉并显示我的应用程序中的错误.全局变量很简单:
$errors = '';
class Name {
/**
* Validate form
*/
public function validate_form() {
global $errors;
(...)
if ( empty($_POST["blabla"]) ) {
$errors = 'Error';
}
(...)
return;
}
/**
* Display errors
*/
public function show_error() {
global $errors;
if(!empty($errors)) return '<div class="error">' . PHP_EOL . htmlspecialchars($errors) .'</div>';
}
}
…但我读到你不应该使用全局变量.如果没有全局变量,我怎么能做同样的事情呢?
对不起我的英语不好 😉
最佳答案 如何不使它全球化,即:
<?php
class Name {
public $errors;
/*
* Validate form
*/
public function validate_form() {
(...)
if ( empty($_POST["blabla"]) ) {
$this->errors = 'Error';
}
(...)
return;
}
}
然后每次在该类中运行fucntion时,检查是否生成了错误:
$obj = new Name()->validate_form();
if(isset($obj->errors)){
//oops, an error occured, do something
}