一个用于两种日期格式的分解函数 我有两个PHP变量 $CuffyDATEARR 和 $咨询日期。用户可以插入任何日期格式考虑现在22-12 2014或22/12 /2014。我要做的是写一个爆炸函数,这两个条件都适用,即两个日期格式。 $consult_date_arr=explode("/",$consultationdate); $consult_date_arr=explode("-",$consultationdate);
分解函数应该是上述两个分解函数在功能上的组合,这样它对两种格式都有效。如果有任何疑问,请告诉我一个用于两种日期格式的分解函数 我有两个PHP变量 $CuffyDATEARR 和 $咨询日期。用户可以插入任何日期格式考虑现在22-12 2014或22/12 /2014。我要做的是写一个爆炸函数,这两个条件都适用,即两个日期格式。 $consult_date_arr=explode("/",$consultationdate); $consult_date_arr=explode("-",$consultationdate);,php,Php,分解函数应该是上述两个分解函数在功能上的组合,这样它对两种格式都有效。如果有任何疑问,请告诉我 提前感谢。您可以编写自定义函数并在其中调用explode 像 $string=“-”或“/”或任何您想要爆炸的内容 function dateFormat($string,$date) { $consult_date_arr=explode($string,$consultationdate); return $consult_date_arr; } 您需要正则表达式,在php中使用p
提前感谢。您可以编写自定义函数并在其中调用explode 像 $string=“-”或“/”或任何您想要爆炸的内容
function dateFormat($string,$date)
{
$consult_date_arr=explode($string,$consultationdate);
return $consult_date_arr;
}
您需要正则表达式,在php中使用
preg\u match
<?php
$consult_date_arr;
$consultationdate = '22/12/2014';
if(preg_match('/[\d]{2}-[\d]{2}-[\d]{4}/', $consultationdate)){
$consult_date_arr = explode('-', $consultationdate);
}else if(preg_match('/[\d]{2}\/[\d]{2}\/[\d]{4}/', $consultationdate)){
$consult_date_arr = explode('/', $consultationdate);
}
var_dump($consult_date_arr);
?>
试试这样的方法
<?php
$date = '22/12/2014';
$keywords = preg_split("/[-,\/]+/", $date);
print_r($keywords);
?>
preg_split-通过正则表达式拆分字符串
参考文献
您好,请检查下面的代码
<?php
if(!function_exists('date_explode')){
function date_explode($date){
$explode_date = array();
$delimiter = '';
if(strstr($date, '/')){
$delimiter = '/';
}elseif(strstr($date, '-')){
$delimiter = '-';
}
if(!empty($delimiter)){
$explode_date = explode($delimiter, $date);
}
return $explode_date;
}
}
$consult_date_arr=date_explode('22-12-2014');
print_r($consult_date_arr);
$consult_date_arr=date_explode('22/12/2014');
print_r($consult_date_arr);
?>
附言:请务必进行验证,验证将阻止您出现此类问题感谢您的回复,但正如我在问题中提到的,我不确定用户将使用哪种日期格式,因此我无法将其分配给$string,我不想为此使用额外的函数。您可以通过查找分隔符在给定日期中的位置来查找分隔符HAL:如何操作?$date=“15-01-2010”;$string=substr($date,2,1);先使用strotime,然后分解如何。@SurabhilSergy请详细说明。为什么不对用户输入进行验证?这样可以节省您的时间time@SuhelMeman不能那样做。可能是重复的
<?php
if(!function_exists('date_explode')){
function date_explode($date){
$explode_date = array();
$delimiter = '';
if(strstr($date, '/')){
$delimiter = '/';
}elseif(strstr($date, '-')){
$delimiter = '-';
}
if(!empty($delimiter)){
$explode_date = explode($delimiter, $date);
}
return $explode_date;
}
}
$consult_date_arr=date_explode('22-12-2014');
print_r($consult_date_arr);
$consult_date_arr=date_explode('22/12/2014');
print_r($consult_date_arr);
?>