suchen

Heim  >  Fragen und Antworten  >  Hauptteil

PhpStorm 2016.2 + Laravel5.3 + Befehlszeilentool – Artisan

Folgen Sie dieser Konfiguration

http://confluence.jetbrains.c...

Wenn Sie die alte Version von PHPstrom verwenden und Laravel5.2 verwenden, ist diese korrekt und einfach zu verwenden.

Als ich zu phpstrom2016.2 laravel5.3 wechselte, wurde während der Konfiguration ein Fehler gemeldet. Kennt jemand den Grund?

Der Fragelink auf stackoverflow.com lautet:
http://stackoverflow.com/ques...

Fehlermeldung:

为情所困为情所困2756 Tage vor570

Antworte allen(1)Ich werde antworten

  • 巴扎黑

    巴扎黑2017-05-16 16:53:14

    谢邀。不过我没用过 PHPStorm ,太贵买不起...

    看了下你的错误日志,应该不是 PHPStorm 的问题,你执行了 php artisan list --xml 这个命令,而 --xml 是不被支持的,应该是 php artisan list --format=xml

    可能这个参数不是你写的,看你的截图有选择 Symfony 的地方,应该是 PHPStorm 自动调用了 --xml.

    我搜了下,碰到这个问题的人很多,用的最多的解决方案是修改 artisan 这个问题,让其支持 --xml 参数。编辑项目根目录下的 artisan 文件,在 <?php 后面加一段代码:

    if (isset($argv[1], $argv[2]) &&
        $argv[1] === 'list' &&
        $argv[2] === '--xml'
    ) {
        $argv[2] = '--format=xml';
        $_SERVER['argv'] = $argv;
    }

    来源:
    https://laracasts.com/discuss...
    http://stackoverflow.com/a/34...

    PHPStore 论坛里也有人给了别的方案,你可以参考下 https://youtrack.jetbrains.co...

    --- update:

    刚装了 PHPStorm 试了下,可以正常使用。
    我装的版本:

    PhpStorm 2016.2.1
    Build #PS-162.1889.1, built on August 23, 2016

    添加命令步骤:

    1. 进入设置 Preferences | Tools | Command Line Tool Support

    2. 点击 添加命令。选择 Tool based on Symfony Console,然后点击 OK

    3. 输入命令代名,选择 Symfony version 3.*.*, 选择 php 路径,输入项目的 artisan 文件路径。然后点击 OK 弹出提示已发现59条命令。

    4. 测试:选择菜单 Tools | Run Command ,输入 artisan , artisan list , artisan make:controller TestController 均正常。

    注意事项:

    • 新建命令时,选择 Symfony 3 版本

    • Path to PHP executable 要选你系统上正在使用的php位置,可以在系统终端用 which php 得到。
      PHPStorm 这里的选择框应该会把你系统使用的所有 PHP 版本列出来。我这边是两个,第一个 php 是 macoOS 自带的,版本是 5.5.36,而 Laravel 5.3 最低要求 PHP 版本是 5.6.4 。 你截图的那个错误就是这个原因,Laravel 5.3 helpers.php 里有个语法是 php 5.5 不支持的。

    Antwort
    0
  • StornierenAntwort