我想知道用户是否具有'VIEW_GEOLOC_DATA'角色,但是使用twig函数时遇到问题is_granted().
如果我在模板中使用:
Roles : {{ dump(app.user.getRoles()) }}
is_granted('ROLE_SUPER_ADMIN') : {{ dump(is_granted('ROLE_SUPER_ADMIN')) }}
is_granted('VIEW_GEOLOC_DATA') : {{ dump(is_granted('VIEW_GEOLOC_DATA')) }}
Run Code Online (Sandbox Code Playgroud)
这是我在渲染时得到的:
array(2) {
[0]=>
string(16) "ROLE_SUPER_ADMIN"
[1]=>
string(16) "VIEW_GEOLOC_DATA"
}
is_granted('ROLE_SUPER_ADMIN') : bool(true)
is_granted('VIEW_GEOLOC_DATA') : bool(false)
Run Code Online (Sandbox Code Playgroud)
我试图登录和退出,清空symfony的缓存.
我还试图切换我的用户getRoles()方法返回的数组中的角色顺序:函数is_granted只会考虑数组的第一个角色
我从网站收集数据,有时似乎无法访问(或者,它可能只是DNS主机,有时会出现一些问题).用PHP编写的程序(使用CLI启动)退出并显示错误:
无法解析主机'abcdef.com'
我想拦截这个错误,就像异常一样,因为程序一定不能退出.
我尝试了"尝试捕获",但这不起作用.
我想避免使用外部守护进程来重启程序......
谢谢您的帮助.
编辑:使用的代码:
function goToPage($url) {
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_COOKIEFILE, realpath("./cookies/cookie.txt"));
$ret = curl_exec($ch);
if ($ret === FALSE) {
die(curl_error($ch));
}
curl_close($ch);
$this->delay();
return $ret;
}
Run Code Online (Sandbox Code Playgroud)