6

Tôi đang cố gắng PHPStorm và gặp sự cố khi hoàn thành mã. Tôi viết dự án với khuôn khổ Silex và phải đối mặt với việc thiếu hoàn thành mã của PHPStorm đối với vùng chứa tiêm phụ thuộc Silex. Ví dụ: nó không hoàn thành codec $app['twig']-> hoặc $app['db']-> hoặc bất kỳ dịch vụ nào khác. Giải pháp duy nhất mà tôi đã tìm được là thực hiện smth như thế nàyPHPStorm, chỉ mục Silex DI hoàn thành mã

$db = $app['db']; 
/** @var $db \Doctrine\DBAL\Connection */ 
$db->.... 

Và sau đó PHPStorm sẽ hoàn thành mã. Dịch vụ được đăng ký bằng giao diện ServiceProvider. Có cách nào để làm cho PHPStorm hoàn thành mã trong những trường hợp như vậy mà không cần thêm các bình luận và bình luận?

+0

Để bạn biết, PhpStorm không thể thực hiện được điều đó, nhưng không có IDE nào khác mà tôi biết. –

+0

Yup. Nhưng tôi đã tìm thấy một plugin PhpStorm có tên "Magicento" mang đến các tính năng hoàn thiện/điều hướng/v.v. cho các dự án dựa trên Magento. Tôi đang kiểm tra các plugin (đã xem video chỉ sử dụng) và nếu nó hoạt động tốt có một cách để mở rộng khả năng hoàn thành (nhưng với phím nóng bổ sung) bằng nhiều cách. – schyzoo

+3

ArrayAccess là điều khiến tôi khó chịu về Pimple, đó là lý do tại sao tôi viết [Props] (https://github.com/mrclay/Props), một DIC cơ bản dựa trên __get và __call –

Trả lời

7

Theo như tôi biết, hiện nay là không thể, tuy nhiên, có hiện đang làm việc đang diễn ra để hỗ trợ thêm cho các mẫu máy generic, xem vấn đề này về vấn đề-tracker của họ:

http://youtrack.jetbrains.com/issue/WI-6027

Nhà phát triển PhpStorm hoan nghênh các yêu cầu tính năng mới trên trình theo dõi vấn đề của họ và khá nhạy. Vì vậy, bạn có thể nộp đơn yêu cầu tính năng

Ngoài ra, điều này có thể liên quan đến câu hỏi của bạn: http://youtrack.jetbrains.com/issue/WI-5304

1

Dưới đây là một plugin cho PHPStorm/Intellij IDEA: https://plugins.jetbrains.com/plugin/7809?pr=

Không thử nó chưa, nhưng trông đầy hứa hẹn ...

chỉnh sửa: Chỉ cần cho nó một shot nhanh chóng, và có vẻ thực sự mát mẻ và đơn giản để thiết lập:

  • Cài đặt plugin qua trình quản lý IDE Plugin

  • Thêm phụ thuộc sau:

"require": { 
    "sorien/silex-pimple-dumper": "~1.0" 
} 
  • Đăng ký nhà cung cấp:

    $ cấp ứng dụng> đăng ký (mới Sorien \ Provider \ PimpleDumpProvider());

Và bạn đã hoàn tất.

Các vấn đề liên quan