我有一堆名称如下的复选框:
q1_week1_monday
例如,如何将这些字符串拆分为 3 个不同的变量
$quarter = q1;
$week = 1;
$day = monday;
谢谢
我有一堆名称如下的复选框:
q1_week1_monday
例如,如何将这些字符串拆分为 3 个不同的变量
$quarter = q1;
$week = 1;
$day = monday;
谢谢
用于explode()
拆分字符串和list
构造以将部分分配给变量。之后,使用正则表达式去掉周前缀。
list ($quarter, $week, $day) = explode("_", "q1_week1_monday")
$week = preg_replace("#week(\d+)#", "$1", $week);
用于explode()
通过分隔符 ( _
) 分割字符串,然后用于filter_var()
获取周数。
$str = 'q1_week1_monday';
$parts = explode('_', $str);
$quarter = $parts[0];
$week = filter_var($parts[1], FILTER_SANITIZE_NUMBER_INT);
$day = $parts[2];
使用list()
构造(更整洁):
list($quarter, $week, $day) = explode('_', $str);
$week = filter_var($week, FILTER_SANITIZE_NUMBER_INT);
注意:这里假设字符串的中间部分只包含一个数字。
explode()
像这样使用和访问它
$str="q1_week1_monday";
$str=explode('_',$str);
$quarter = $str[0];//q1
$week = intval($str[1]);//1
$day = $str[2];//monday