preg_replaceで得た変数に加算する方法:e修飾子廃止されていた

preg_replaceで得た変数に加算したい場合、e修飾子を使用していたがPHP7からe修飾子が廃止されてしまっていたため、preg_replace_callbackを使用することで実現できる

$url = "https://xxxx.com/page=1"; 最後の数字に加算したい
$url = preg_replace_callback('/(.*page=)([0-9]{0,3})/', function($m){ return "$m[1]"."$m[2]"+1; }, $url);

もしくはpreg_matchとstr_replaceを組み合わせる

$url = "https://xxxx.com/page=1"; 最後の数字に加算したい
preg_match('/.*page=([0-9]{0,3})/u', $url, $m);
$nexturl_page = (int)$m[1]+1;
$nexturl = str_replace($m[1],$nexturl_page,$url);

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です