如何在PHP中将字符串拆分为3个不同的变量?

时间:2013-11-06 17:55:39

标签: php

我有一堆复选框,其名称如下:

q1_week1_monday

如何将这些字符串拆分为3个不同的变量,例如

$quarter = q1;
$week = 1;
$day = monday;

由于

3 个答案:

答案 0 :(得分:6)

使用explode()拆分字符串和list构造以将部件分配给变量。然后,使用regexp删除周前缀。

list ($quarter, $week, $day) = explode("_", "q1_week1_monday")
$week = preg_replace("#week(\d+)#", "$1", $week);

答案 1 :(得分:3)

使用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);

注意:这假定字符串的中间部分只包含一个数字。

Demo!

答案 2 :(得分:1)

使用 explode() 并将其作为此类变量

进行访问
$str="q1_week1_monday";
$str=explode('_',$str);
$quarter = $str[0];//q1
$week = intval($str[1]);//1
$day = $str[2];//monday