【问题标题】:Create and configure a Laravel project with PhpStorm使用 PhpStorm 创建和配置 Laravel 项目
【发布时间】:2014-11-20 13:58:12
【问题描述】:

我对 Homestead 的全部内容以及它与 IDE 的关系非常感兴趣。假设我的 PhpStorm 安装在 ~/Developer/PhpStorm 中,Homestead 位于 ~/Developer/Homestead 中。这就是我在 Homestead 中的 YAML 文件的样子:

authorize: ~/.ssh/id_rsa.pub

keys:
    - ~/.ssh/id_rsa

folders:
    - map: ~/Developer/Homestead/workspace
      to: /home/vagrant/Code

sites:
    - map: helloworld.app
      to: /home/vagrant/Code/Laravel/public

variables:
    - key: APP_ENV
      value: local

所以,您会看到我在 Homestead 目录中有一个工作区文件夹。 我还有另一个目录:~/Developer/workspace/PHP 我打算在其中存储我的项目,而不是在 Homestead 文件夹中。

我在 PhpStorm 中安装了 Laravel 插件。而且,为了让 Laravel 插件在 PhpStorm 中工作,需要this generated file。我的问题是:

  1. 我应该把 _ide_helper.php 文件放在哪里,这样 PhpStorm 才能在 Laravel 中正常工作?我应该将它粘贴到每个项目中还是只粘贴一次?
  2. 我是否必须在 YAML sites: map 字段中为要启动 atm 的每个项目编写不同的应用名称?
  3. 如何创建一个新的 Laravel 类型项目。当我在 PhpStorm 中创建一个新项目时,我可以选择一些类型 - 我是否也应该在其中列出 Laravel,因为我没有?因为现在,当我创建一个新的 PHP 项目时,它完全是空的。而且我认为 Laravel 项目应该有一些架构和生成的文件。
  4. 我请求对所有这些 Laravel + Homestead 的东西和 Vagrant 以及如何控制我的项目进行简单的解释,因为我感到非常沮丧,我必须尽快开始在我的学士学位项目中使用这些技术。

【问题讨论】:

  • 我可以推荐你为 PhpStorm 使用 Laravel 插件而不是 helper:更容易,它的创建者不断改进插件。 plugins.jetbrains.com/plugin/7532?pr=phpStorm
  • @Kootli - 这就是我已经安装的。但仍然需要帮助者。它甚至在插件的安装指南中被提及。 :)
  • 关于你的第一个问题:只需将帮助文件复制到你的项目根目录并同步

标签: php laravel laravel-4 phpstorm


【解决方案1】:
  1. 您不需要手动将_ide_helper.php 文件放在任何地方,它是由 Artisan 命令自动生成的。对于每个新项目,在该项目的 composer.json 文件中包含 IDE 帮助程序:

    "require-dev": {
        "barryvdh/laravel-ide-helper": "1.*"
    }
    

    将服务提供者添加到 Laravel 项目的 config.php 文件中的 providers 数组中:

    'Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider'
    

    然后使用 Artisan 为项目生成 _ide_helper.php 文件(从 Laravel 项目目录根目录下的终端运行此命令):

    php artisan ide-helper:generate
    

    这都是从IDE Helper GitHub page 上的说明转述的。我建议您按照这些说明设置您的 composer.json 文件,以便在 composer 更新时自动生成一个新的 _ide_helper.php


  1. 是的。对于每个单独的 Laravel 项目,您需要更新 YAML 文件中的站点映射。对于我的项目,我使用这个方案(请注意,您正在映射到相对于 Vagrant 框的位置):

    sites:
        - map: local.project.example.com
          to: /home/vagrant/Projects/project/public
    

    然后在你的 Homestead 目录中,运行:

    vagrant provision
    

    您还需要更新主机文件以指向 Vagrant 框。

    sudo nano /etc/hosts
    

    添加行:

    127.0.0.1           local.project.example.com
    

    现在您应该可以通过在 Web 浏览器中点击:local.project.example.com:8000 来访问这个 Laravel 项目。


  1. 假设您遵循Laravel installation instructions,最简单的方法是在终端中使用 Laravel 命令。要创建一个名为“blog”的新 Laravel 项目,请导航到 ~/Developer/workspace/PHP 并运行以下命令:

    laravel new blog
    

  1. 我希望以上答案能让您走上正确的道路。最重要的是仔细阅读 Laravel 文档,因为它涵盖了我刚刚所做的所有事情,而且更详细。

【讨论】:

    【解决方案2】:

    感谢 Mike Andersen,你让我走上了正确的道路,但你的解决方案 1 对我不起作用(使用 Laravel 5)。

    在对 composer.json 文件进行更改后,您必须运行 "composer update"。但是,当我这样做时,我得到了这个错误:

    barryvdh/laravel-ide-helper v1.2.1 requires phpdocumentor/reflection-docblock dev-master#6d705c1a0f9e2a6d73d2e9ec0e538b9dfaf4315f -> no matching package found.
    

    我有另一个解决方案:

    1. 从 composer.json 文件的 require 数组中删除有关“barryvdh/laravel-ide-helper”的行。
    2. 运行下一行:composer require barryvdh/laravel-ide-helper

    那么你可以按照 Mike Andersen 提出的步骤进行操作:

    1. 将服务提供者添加到 Laravel 项目的 config.php 文件中的 providers 数组中:

      Barryvdh\LaravelIdeHelper\IdeHelperServiceProvider

    2. 然后使用 Artisan 为项目生成 _ide_helper.php 文件(从 Laravel 项目目录根目录下的终端运行此命令):

      php artisan ide-helper:generate

    3. 在 phpStorm 上打开您的项目并转到:File|Synchronize

    您的 laravel 项目将使用最新版本的 barryvdh/laravel-ide-helper 扩展更新

    (更多信息:https://github.com/barryvdh/laravel-ide-helper

    【讨论】:

      猜你喜欢
      • 2020-09-17
      • 1970-01-01
      • 2018-01-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多