我基本上是在玩 OOP,当我开始遇到问题清理然后执行进一步验证时,我正在创建一种验证和清理输入的方法。我正在寻找的是获取发布的$_POST['name']
数据,清理输入以删除任何数字并验证留下的数据既不是数字字符也不是null
数字字符。
但是我无法将经过清理的输入保存到$sanitised
,它似乎是空的,但是当我替换时
$sanitised=$fv->noNumbers($_POST['name']);
和
$sanitised=preg_replace('/[0-9]/', '', $_POST['name']);
一切正常,所以我认为我在这个$sanitised
变量中搞砸了一些东西。
我想学习所以要么解决这个问题,要么“你是个白痴,做错了”,将不胜感激。
<?php
class formSanitise {
public function noNumbers($value) {
$value = preg_replace('/[0-9]/', '', $value);
}
public function isEmpty($value) {
return (!isset($value) || trim($value) == '') ? true : false;
}
public function isAlpha($value) {
return preg_match('/[^a-z]/i', $value) ? false : true;
}
?>
处理器.php
<?php
include('class.formSanitise.php');
$fv = new formSanitise();
$sanitised= $fv->noNumbers($_POST['name']);
if ($fv->isEmpty($sanitised)) {
$fv->addError('Name', 'Please enter something');
}
if (!$fv->isAlpha($sanitised)) {
$fv->addError('Name', 'Please enter your name');
}
?>