У вас в проблемной строчке очень много операций.
Разбейте эту строку на несколько отдельных действий, определите, какое из них вызывает ошибку и потом уже отталкивайтесь от этого при решении проблемы.
Примерно так:
$queryString = http_build_query($params);
$decodedQueryString = urldecode($queryString); // Не совсем понимаю, зачем эта операция вообще. Объясните, зачем вы это делаете
$requestUrl = "https://oauth.vk.com/access_token?{$decodedQueryString}";
$response = file_get_contents($requestUrl);
$userInfo = json_decode($response);