如何在laravel中使用base64对URL进行编码?
我需要这样的东西:
原始网址:http://localhost/dashboard/api/test/
编码网址:http://localhost/dashboard/YXBpL3Rlc3Qv
答案 0 :(得分:2)
如果你正在使用Routes,你可以这样做:
Route::get('/dashboard/{code}', function($code){
$url = base64_decode($code);
//redirect according to $url ... for example "api/test/"
return redirect( $url );
});
答案 1 :(得分:0)
我发现这段代码对我有帮助,我只是在寻找可以从base64字符串中删除“ =”的东西,因此在这里:-
<?php
function base64url_encode($data) {
return rtrim(strtr(base64_encode($data), '+/', '-_'), '=');
}
function base64url_decode($data) {
return base64_decode(str_pad(strtr($data, '-_', '+/'), strlen($data) % 4, '=', STR_PAD_RIGHT));
}
?>
示例:-
dump(rtrim(strtr(base64_encode('Hello World'), '+/', '-_'), '='));
$encodedString = rtrim(strtr(base64_encode('Hello World'), '+/', '-_'), '=');
dd(base64_decode(str_pad(strtr($encodedString, '-_', '+/'), strlen($encodedString) % 4, '=')));
我希望这对某人有帮助。