是否可以在PHP中将字符串14转换为2014

Dim*_*ims 0 php date

我有一个由字符串组成的数组(2014/15):

$arr = explode("/", $Years, 2);
Run Code Online (Sandbox Code Playgroud)

..然后是两个字符串:

$frstHalfYear = $arr[0];
$secHalfYear = $arr[1];
Run Code Online (Sandbox Code Playgroud)

..输出如下:

for $frstHalfYear: 2014
for $secHalfYear: 15
Run Code Online (Sandbox Code Playgroud)

我的问题是:是否有可能转换15 成一整年2014.这个:

date("Y", strtotime($secHalfYear))
Run Code Online (Sandbox Code Playgroud)

显然不起作用.简单的方法是20在字符串的开头添加,但我想知道是否有更通用的方式..

谢谢

Nie*_*sol 5

这是我能想到的最通用的解决方案:

$secHalfYear = substr($frstHalfYear,0,-strlen($secHalfYear)).$secHalfYear;
Run Code Online (Sandbox Code Playgroud)

基本上,这将采取202014,并坚持它之前15作出2015.

它甚至支持2099/100格式!但更重要的是,你可以写2014/2015,它也可以正常工作.

  • @Dims你显然已经找到了青春的源泉;-) (2认同)