GVKun编程网logo

PHP-作曲家未能在symfony 4上要求symfony / symfony(为什么说作曲家不需要多大的智慧)

3

此处将为大家介绍关于PHP-作曲家未能在symfony4上要求symfony/symfony的详细内容,并且为您解答有关为什么说作曲家不需要多大的智慧的相关问题,此外,我们还将为您介绍关于php–sy

此处将为大家介绍关于PHP-作曲家未能在symfony 4上要求symfony / symfony的详细内容,并且为您解答有关为什么说作曲家不需要多大的智慧的相关问题,此外,我们还将为您介绍关于php – symfony / FOSRestBundle:空的JSON响应(使用symfony体现的序列化程序)、php – Symfony 3:使用Symfony的开发服务器进行调试、php – Symfony中的URL自动添加了params?Symfony =、php – 从symfony1升级到symfony2的有用信息。

本文目录一览:

PHP-作曲家未能在symfony 4上要求symfony / symfony(为什么说作曲家不需要多大的智慧)

PHP-作曲家未能在symfony 4上要求symfony / symfony(为什么说作曲家不需要多大的智慧)

我通过以下行通过composer安装了symfony的最新版本:

composer create-project symfony/skeleton whatever

然后,按照此page上的说明,我决定需要整个框架,因此不必通过输入以下命令逐个安装所有捆绑软件:

composer require symfony/symfony

但是问题是我最终遇到以下错误:

composer require symfony/symfony
Using version ^4.0 for symfony/symfony
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements Could not be resolved to an installable set of packages.

  Problem 1
    - symfony/symfony v4.0.0 conflicts with __root__[No version set (parsed as 1.0.0)].
    - symfony/symfony v4.0.1 conflicts with __root__[No version set (parsed as 1.0.0)].
    - symfony/symfony v4.0.2 conflicts with __root__[No version set (parsed as 1.0.0)].
    - Installation request for __root__ No version set (parsed as 1.0.0) -> satisfiable by __root__[No version set (parsed as 1.0.0)].
    - Installation request for symfony/symfony ^4.0 -> satisfiable by symfony/symfony[v4.0.0, v4.0.1, v4.0.2].


Installation Failed, reverting ./composer.json to its original content.

当我指定版本4.0.2时,我少了2个错误,但问题仍然相同:

composer require symfony/symfony v4.0.2
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements Could not be resolved to an installable set of packages.

  Problem 1
    - Installation request for __root__ No version set (parsed as 1.0.0) -> satisfiable by __root__[No version set (parsed as 1.0.0)].
    - symfony/symfony v4.0.2 conflicts with __root__[No version set (parsed as 1.0.0)].
    - Installation request for symfony/symfony v4.0.2 -> satisfiable by symfony/symfony[v4.0.2].


Installation Failed, reverting ./composer.json to its original content.

我的composer.json:

{
    "type": "project",
    "license": "proprietary",
    "require": {
        "PHP": "^7.1.3",
        "ext-iconv": "*",
        "sensiolabs/security-checker": "^4.1",
        "symfony/console": "^4.0",
        "symfony/flex": "^1.0",
        "symfony/framework-bundle": "^4.0",
        "symfony/lts": "^4@dev",
        "symfony/yaml": "^4.0"
    },
    "require-dev": {
        "symfony/dotenv": "^4.0",
        "symfony/thanks": "^1.0"
    },
    "config": {
        "preferred-install": {
            "*": "dist"
        },
        "sort-packages": true
    },
    "autoload": {
        "psr-4": {
            "App\\": "src/"
        }
    },
    "autoload-dev": {
        "psr-4": {
            "App\\Tests\\": "tests/"
        }
    },
    "replace": {
        "symfony/polyfill-iconv": "*",
        "symfony/polyfill-PHP71": "*",
        "symfony/polyfill-PHP70": "*",
        "symfony/polyfill-PHP56": "*"
    },
    "scripts": {
        "auto-scripts": {
            "cache:clear": "symfony-cmd",
            "assets:install --symlink --relative %PUBLIC_DIR%": "symfony-cmd",
            "security-checker security:check": "script"
        },
        "post-install-cmd": [
            "@auto-scripts"
        ],
        "post-update-cmd": [
            "@auto-scripts"
        ]
    },
    "conflict": {
        "symfony/symfony": "*"
    },
    "extra": {
        "symfony": {
            "id": "0133333333333333337ed17ed",
            "allow-contrib": false
        }
    }
}

我很困惑,我无法在symfony doc上找到很多有关此的信息,而且我与作曲家相距甚远,有什么线索吗?

解决方法:

symfony / skeleton软件包设计用于Symfony Flex.该项目的重点是避免使用整个框架,因此该软件包与之明显冲突.

您应该从symfony / framework-standard-edition创建项目,该项目将引入整个框架,或者利用Flex中的新功能仅引入所需的组件或“recipes”.

php – symfony / FOSRestBundle:空的JSON响应(使用symfony体现的序列化程序)

php – symfony / FOSRestBundle:空的JSON响应(使用symfony体现的序列化程序)

我正在学习使用symfony构建API(使用FOSRestBundle).我正在学习法语教程.显然,我首先尝试自己编写代码,但即使使用复制/粘贴,当我向相应的路径(rest-api.local / places)发出GET请求时,它仍然会让我获得空的 JSON数组.

如果我“格式化”PHP数组中的代码,代码工作正常:

public function getPlacesAction(Request $request)
{
    $places = $this->get('doctrine.orm.entity_manager')
            ->getRepository('AppBundle:Place')
            ->findAll();
    /* @var $places Place[] */

    $formatted = [];
    foreach ($places as $place) {
        $formatted[] = [
           'id' => $place->getId(),'name' => $place->getName(),'address' => $place->getAddress(),];
    }

    return new JsonResponse($formatted);
}

但后来我尝试直接序列化$places,使用fost Rest的视图处理程序(在config.yml中)

fos_rest:
routing_loader:
    include_format: false
view:
    view_response_listener: true
format_listener:
    rules:
        - { path: '^/',priorities: ['json'],fallback_format: 'json' }

并将我的控制器中的功能更改为以下代码,我得到了我的JSON响应,但“{[],[],[]}”之间没有任何内容(我的数据库中有3个条目):

public function getPlacesAction(Request $request)
{
    $places = $this->get('doctrine.orm.entity_manager')
            ->getRepository('AppBundle:Place')
            ->findAll();
    /* @var $places Place[] */

    return $places;
}

这是我关于stackoverflow的第一篇文章,所以我希望我的问题很清楚,祝你有愉快的一天.

解决方法

在我的app / config / services.yml中我添加了这个:

services:
    object_normalizer:
        class: Symfony\Component\Serializer\normalizer\GetSetMethodnormalizer
        # Important! Tag this service or it wouldn't work
        tags:
            - { name: serializer.normalizer }

我仍然无法理解为什么它有效但突然间我有一个很好的json作为回应.

php – Symfony 3:使用Symfony的开发服务器进行调试

php – Symfony 3:使用Symfony的开发服务器进行调试

在Symfony 3.3项目的开发过程中,我使用Symfony的内部服务器,如 there所示.但我无法弄清楚如何使用xdebug来调试它.我的意思是我已通过以下方式安装和配置xdebug:

apt-get install PHP-xdebug

我出口:

export XDEBUG_CONfig="idekey=PHPstorm"

但是,当我在我的IDE中设置断点并通过that插件启用xdebug时,我仍然没有得到任何响应.

另外,我在/etc/PHP/7.0/mods-available/xdebug.ini上进行了以下设置

zend_extension=xdebug.so
xdebug.remote_enable=On
xdebug.remote_autostart=On
xdebug.remote_handler=dbgp
xdebug.remote_host=localhost
xdebug.remote_port=9021
xdebug.remote_mode=req

我已经配置了两个PHPStorm来监听端口9021.但我仍然遇到问题,我不能让PHPStorm监听断点.

你们的伙伴们有什么想法我可以通过我的ubuntu-16.04机器解决这个问题吗?

此外,我没有成功地看过这些问题:

> Xdebug configuration with PHP fastcgi and eclipse?
> Is it possible to use Xdebug with the built in PHP test server?

编辑1

我还尝试导出以下内容:

export XDEBUG_CONfig="idekey=PHPSTORM"

配置Firefox plugin但仍然获得完全相同的行为.还要记住,我按下

phpstop xdebug button

按钮让PHPStorm通过xdebug收听.

编辑2

我还在我的PHPStorm上添加了以下配置:

Php configuration

仍然无法正常工作.

解决方法

最后,需要执行以下步骤:

>将以下内容放入:/etc/PHP/7.0/mods-available/xdebug.ini

zend_extension=xdebug.so
xdebug.remote_enable=On
xdebug.remote_handler=dbgp
xdebug.remote_host=localhost
xdebug.remote_port=9021
xdebug.remote_mode=req

>出口:

export XDEBUG_CONfig="idekey=PHPSTORM"

>然后配置PHPStorm,如image所示.
>将IDE密钥PHPSTORM设置为Firefox plugin
>通过按下按钮在Firefox上启用xdebug.或者,您可以使用?XDEBUG_START部分附加网址
>然后按PHPStorm中的按钮.万一你看到然后再按回来.

注意:

如果您更改xdebug设置,请按下按钮并再次按回来终止xdebug会话.

此外,万一你通过终端运行composer禁用PHPStorm按下按钮听xdebug.

php – Symfony中的URL自动添加了params?Symfony =

php – Symfony中的URL自动添加了params?Symfony =

我的网址有问题. Symfony会自动添加params?Symfony =
怎么删除?

我认为这是一个改变的服务器设置.

http://mysite.com/?symfony=123456789

Symfony:Symfony 1.4

解决方法:

它看起来像会话ID.

将session.use_only_cookies设置为1仅使用cookie在客户端存储会话ID.

php – 从symfony1升级到symfony2

php – 从symfony1升级到symfony2

我们现在正在开始一个项目,我们想知道什么是最好的课程:使用Symfony 2,即使它不稳定和最终,或使用Symfony1并稍后升级?
我建议从Symfony2开始:从Symfony 1迁移到2将非常困难,Symfony2几乎是一个完全不同的框架.

我必须补充一点,即使在Symfony 1的次要版本之间迁移也可能是一个真正的痛苦.

关于PHP-作曲家未能在symfony 4上要求symfony / symfony为什么说作曲家不需要多大的智慧的问题我们已经讲解完毕,感谢您的阅读,如果还想了解更多关于php – symfony / FOSRestBundle:空的JSON响应(使用symfony体现的序列化程序)、php – Symfony 3:使用Symfony的开发服务器进行调试、php – Symfony中的URL自动添加了params?Symfony =、php – 从symfony1升级到symfony2等相关内容,可以在本站寻找。

本文标签: