如何在服务器端验证输入文本,其中标记以逗号分隔?

时间:2013-10-27 16:11:39

标签: php post explode

用户将在文本字段上输入如下内容:

$list = "hello, internet, connection, wireless"

我正在通过以下方式解决这些问题:

$tags = explode(',', $list);

问题是,在我这样做之前,我需要验证$_POST中捕获的字符串格式是否实际具有该格式。任何想法我该怎么做?我不是一个经验丰富的PHP程序员,我通常只是在前端开发。

用户可以输入4个以上的标签,并不总是4个,他可以输5个或6个,最多7个,我想要的输出是数组,字符串中的所有单词,这背景是我正在制作一个简单的帮助台,用户可以提出问题,我会根据用户输入的问题中找到的标签返回所有结果。

所以我真的需要确保当这个帮助台的ADMIN输入标签时,它们就是这种格式:

$data = "internet, connection, wireless, internet-explorer";

1 个答案:

答案 0 :(得分:0)

我依赖于每次4个元素的内容。

<?php

    $list = "hello, internet, connection, wireless";
    echo substr_count($list,', '); // return 3 commas

?>                                                                                      

或者计算元素:

<?php
     $list = "hello, internet, connection, wireless";
     $result = explode(', ',$list);
     if(count($result) ==4 ){
         echo "right format";
     }
?>

编辑:

当你不需要空格时:

<?php
     $list = "hello, internet, connection, wireless";
     $result = array_map('trim',explode(",",$list)); 
     if(count($result) ==4 ){
         echo "right format";
     }
?>