- substr: documentation ( source)
- strpos: documentation ( source)
- is_numeric: documentation ( source)
- explode: documentation ( source)
- trim: documentation ( source)
- date: documentation ( source)
<?php
$value = 'Y - s10;';
$arrvalidrules = explode(';', $value);
// On vérifie qu'il n'y bien que deux valeurs.
if (count($arrvalidrules) == 2) {
$intyearend = null;
if ($arrvalidrules[0]!='') {
if (is_numeric($arrvalidrules[0])) {
$intyearstart=intval($arrvalidrules[0]);
}
else if (strpos($arrvalidrules[0], 'Y') === 0) {
$intyearstart = date('Y');
if (($intsignpos = strpos($arrvalidrules[0], '+')) !== false) {
$intyearstart += (int) (trim(substr($arrvalidrules[0], $intsignpos+1)));
}
else if (($intsignpos = strpos($arrvalidrules[0], '-')) !== false) {
$intyearstart -= (int) (trim(substr($arrvalidrules[0], $intsignpos+1)));
}
}
else {
$intyearstart = false;
}
}
else {
$intyearstart = 0;
}
}
echo 'Date : '.$intyearstart.' - '.$intyearend;