标签: php-attributes

Symfony #[CurrentUser] 属性返回 null

<?php

declare(strict_types=1);

namespace App\Controller\User;

use App\Entity\User;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
use Symfony\Component\Security\Http\Attribute\CurrentUser;

#[Route('/users', name: 'user.')]
class UserController extends AbstractController
{
    #[Route(name: 'list')]
    public function list(#[CurrentUser] ?User $user, Request $request): Response { 
        dd($user->getFirstName());
    }

Run Code Online (Sandbox Code Playgroud)

说的 Call to a member function getFirstName() on null

但我已获得授权。在 Symfony Profiler 中,它显示我已登录。

环境:PHP 8.0.11 Symfony 5.3.9

php symfony php-attributes

10
推荐指数
1
解决办法
3028
查看次数

Doctrine ORM 2.9同时使用AnnotationDriver和AttributeDriver来解析实体元数据

最近我们将应用程序升级到 PHP8。

由于PHP8引入了属性doctrine/orm从版本开始支持它们,2.9因此利用此功能增量(即不是一次所有实体)将实体元数据更新为属性格式似乎是个好主意。

为此,我需要以某种方式注册两者Doctrine\ORM\Mapping\Driver\AnnotationDriverDoctrine\ORM\Mapping\Driver\AttributeDriver解析元数据。

棘手的部分是为一组使用注释或属性修饰的实体注册两个解析器。从这一点来看,Doctrine\ORM\Configuration我所需要的似乎是不可能的。

我是否正确(假设这无法合理实现)或者可以通过某种不太黑客的方式来完成吗?

php doctrine-orm php-8 php-attributes

2
推荐指数
1
解决办法
3797
查看次数

如何用 php 8 中的新属性替换 phpdocs

我正在使用拉拉维尔。我需要知道如何在 php 8 中使用属性编写 phpdoc。

/**
     * Transform the resource into an array.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return array
     */
    public function toArray($request)
    {
      //Some code
      return [];
    }
Run Code Online (Sandbox Code Playgroud)

有人可以解释一下上面的代码如何用属性来编写吗?

phpdoc php-8 php-attributes

2
推荐指数
1
解决办法
3438
查看次数

标签 统计

php-attributes ×3

php ×2

php-8 ×2

doctrine-orm ×1

phpdoc ×1

symfony ×1