Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/268.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在Silex中正确配置SecurityProvider?_Php_Silex_Symfony Components - Fatal编程技术网

Php 如何在Silex中正确配置SecurityProvider?

Php 如何在Silex中正确配置SecurityProvider?,php,silex,symfony-components,Php,Silex,Symfony Components,我试图使用Symfony的安全组件,该组件集成在Silex PHP框架中。不幸的是,我无法使用Silex文档,因为它只列出了一些需求,没有给出任何完整的工作示例 Silex需要一系列参数来注册SecurityProvider;它们应该是什么 大体上。。如何在Silex中正确配置SecurityProvider 有人能给我发一些代码片段/带着说明把我带到某个隐藏的网页吗?我对此有些纠结。假设您指的是接受用户名和密码的表单输入,并且使用Bcrypt库,我可以发布一些我使用的代码。我使用单独的控制器,

我试图使用Symfony的安全组件,该组件集成在Silex PHP框架中。不幸的是,我无法使用Silex文档,因为它只列出了一些需求,没有给出任何完整的工作示例

Silex需要一系列参数来注册SecurityProvider;它们应该是什么

大体上。。如何在Silex中正确配置SecurityProvider


有人能给我发一些代码片段/带着说明把我带到某个隐藏的网页吗?

我对此有些纠结。假设您指的是接受用户名和密码的表单输入,并且使用Bcrypt库,我可以发布一些我使用的代码。我使用单独的控制器,因此您可能需要调整它以适合您的应用程序。我似乎错过的主要部分是表单数组的username\u参数和password\u参数键。它们在Silex上根本没有记录,我在一篇博文和symfony的文档中找到了它们。这里是一个链接到我的完整来源。这是一个个人沙箱类型的项目

下面是UserProvider的相关部分

public function loadUserByUsername($username)
    {
        //$this->app['monolog']->addDebug('xxxUSERNAME: ' . $username);
        $stmt = $this->app['db']->executeQuery("SELECT * FROM user WHERE username = ?", array(strtolower($username)));

        if (!$user = $stmt->fetch()) {
            throw new UsernameNotFoundException(sprintf('Username "%s" does not exist.', $username));
        }

        return new User($user['username'], $user['pwd_hash'], explode(',', $user['roles']), true, true, true, true);
    }

张贴您尝试过的内容和不起作用的内容。每个人都使用相同的文档,所以这里没有隐藏任何内容,您只是没有正确理解文档。
public function loadUserByUsername($username)
    {
        //$this->app['monolog']->addDebug('xxxUSERNAME: ' . $username);
        $stmt = $this->app['db']->executeQuery("SELECT * FROM user WHERE username = ?", array(strtolower($username)));

        if (!$user = $stmt->fetch()) {
            throw new UsernameNotFoundException(sprintf('Username "%s" does not exist.', $username));
        }

        return new User($user['username'], $user['pwd_hash'], explode(',', $user['roles']), true, true, true, true);
    }