-1

在我的网址中,我像这样传递 id

localhost/?id=1,2,3,4,5,6,7,8,9 

我想知道是否有更好的方法/更简单的方法来验证每个 id 而不使用循环?

if (isset($_GET['id']) && !empty($_GET['id']))
    {
         $str = explode(',', $_GET['id']);

         for($ids = 0; $ids < sizeof($str); $ids++)
         {
             if (!ctype_digit($str[$ids]))
             {
                 echo 'error';
                 break;
             }

        }
    }
4

1 回答 1

2

你可以用一个简单的正则表达式来测试字符串,例如

if (preg_match('/^(\d+,)*\d+$/', $_GET['id']) == 0) {
    throw new Exeption('error');
}
于 2013-07-22T05:35:49.200 回答