第一个值,逗号分隔的字符串


First value comma separated string

将有一个单或多个字符串,根本没有逗号。

$str = "a, b";

如何获得逗号前的第一个值,如果它包含逗号(s)?我就是这么做的。

if(preg_match('/[,]+/', $str, $f)) {
     $firstVal = $f[0];
}

注:/^[^,]+/是否更适合?

您可以使用strtok:

$firstVal = strtok($str, ",")

有几种方法可以做到这一点。

  1. 使用substr()和strpos()

    echo substr($str,0,strrpos($str,','));
    
  2. 使用爆炸()
  3. $result = explode(',',$str);
    echo $result[0];
    
  4. 使用strstr ()
  5. echo strstr($str, ',', true);
    

显示、验证并打印。

$values = explode(',',$str);
if(key_exists(0,$values) &&  trim($values[0])!=""){
  echo $values[0];
}