捕捉PHP中的空格

捕捉PHP中的空格,php,trim,Php,Trim,说到PHP,我是一个新的开发人员。最近,我使用ext.js和PHP为我的操作创建了一些UI。此UI可以添加个人的配置文件。 现在,我的问题是,每当我在UI中添加一个人的配置文件名,并且它以空格字符开头时,数据仍然会与空格字符一起保存。我想要的是,每当我从语句的开头或结尾添加空格时,都必须有一个捕获 这就是我迄今为止所尝试的: public function executeAddRegion(sfWebRequest $request) { try{ $by = $_SE

说到PHP,我是一个新的开发人员。最近,我使用ext.js和PHP为我的操作创建了一些UI。此UI可以添加个人的配置文件。 现在,我的问题是,每当我在UI中添加一个人的配置文件名,并且它以空格字符开头时,数据仍然会与空格字符一起保存。我想要的是,每当我从语句的开头或结尾添加空格时,都必须有一个捕获

这就是我迄今为止所尝试的:

   public function executeAddRegion(sfWebRequest $request)
   {
      try{
 $by = $_SESSION['employee_id'];
 $now = date("Y-m-d H:I:s");

     $description = strip_tags(pg_escape_string($request->getParameter("description")));



 // $description  = $request->getParameter("description");

    $query = "insert into country.regions
                     (description,created_by,date_created)
              values
                     ('".$description."', $by,'$now')";

    $msg = "New Region Successfully Saved.";

    $this->conn->execute($query);

    $data['success']=true;
    $data['msg']=$msg;

  }
  catch(Exception $e)
  {     
    $data['success']=false;
    $data['msg']=$e->getMessage();

  }
  die(json_encode($data));

}

使用修剪删除前导/尾随空格。
使用ltrim(左修剪)删除前导空格。
使用rtrim(右修剪)删除尾部空格

$data = " hello ";

$data = trim($data); // "hello"
$data = ltrim($data); // "hello "
$data = rtrim($data); // " hello"
在将数据插入数据库之前执行此操作

编辑:如果要测试是否存在空格,可以执行以下操作:

if (trim($data) == $data)
{
   // OK
}
else
{
   // data contained some spaces (leading or trailing)
}

使用修剪删除前导/尾随空格。
使用ltrim(左修剪)删除前导空格。
使用rtrim(右修剪)删除尾部空格

$data = " hello ";

$data = trim($data); // "hello"
$data = ltrim($data); // "hello "
$data = rtrim($data); // " hello"
在将数据插入数据库之前执行此操作

编辑:如果要测试是否存在空格,可以执行以下操作:

if (trim($data) == $data)
{
   // OK
}
else
{
   // data contained some spaces (leading or trailing)
}

您也可以在插入之前或选择时使用MySQL字符串函数。您也可以在插入之前或选择时使用MySQL字符串函数。您所说的“catch”是什么意思?您是希望具有前导/尾随空格的输入数据无法通过验证,还是只希望自动修剪空白?我也不知道你的代码样本和你的问题有什么关系。可能是我,但我看不到您在哪里输入需要检查空格的用户名。在将信息保存到数据库之前,只需使用
trim()
。此外,您还面临SQL注入的严重风险。您应该使用参数化查询。@Mike Brant我只对该示例使用了区域,但与username相同,我想知道的是,如果开头或结尾有空格字符,则验证失败。@Mikel OK,那么您尝试过这样做吗?这是一个极其琐碎的字符串操作问题。您所说的“catch”是什么意思?您是希望具有前导/尾随空格的输入数据无法通过验证,还是只希望自动修剪空白?我也不知道你的代码样本和你的问题有什么关系。可能是我,但我看不到您在哪里输入需要检查空格的用户名。在将信息保存到数据库之前,只需使用
trim()
。此外,您还面临SQL注入的严重风险。您应该使用参数化查询。@Mike Brant我只对该示例使用了区域,但与username相同,我想知道的是,如果开头或结尾有空格字符,则验证失败。@Mikel OK,那么您尝试过这样做吗?这是一个极其简单的字符串操作问题。