Nhà cung cấp/bin/phpstan không có tệp hoặc thư mục như vậy
Tôi quay lại để giải quyết một lỗi khác mà bạn có thể gặp phải trong Magento 2. Hôm nay là về “Không thể mở luồng. Không có tệp hoặc thư mục như vậy trong trình soạn thảo autoload_real. lỗi php” trong Magento 2. Trước đó, tôi cũng đã chia sẻ giải pháp cho PHP Fatal Error “Call to Undefined Function str_contains()” Sau khi nâng cấp lên Magento 2. 4. x – Nhấn vào đây để giải quyết
Show
Trong khi làm việc trên các dự án, nhà phát triển của chúng tôi đã gặp một lỗi và đã cố gắng giải quyết nó. Với những nỗ lực nghiêm túc, cuối cùng họ đã giải quyết được lỗi. Do đó, chúng tôi quyết định chia sẻ với tất cả các bạn để dễ dàng hơn nếu bạn gặp phải lỗi này trong tương lai. Hãy tìm hiểu thêm về lỗi tự động tải của nhà soạn nhạc nội dung
Giới thiệuKhi chúng tôi chạy lệnh bên dưới trong thiết bị đầu cuối để gỡ cài đặt mô-đun qua trình soạn thảo, 1 php bin/mô-đun magento:gỡ cài đặt Vendor_Extension --xóa-static-content Lỗi sau xuất hiện trong thiết bị đầu cuối cũng như máy chủ cục bộ, Cảnh báo. yêu cầu(/var/www/html/M243/vendor/composer/. /magento/mô-đun-liên hệ/đăng ký. php). không thể mở luồng. Không có tệp hoặc thư mục như vậy trong /var/www/html/M243/vendor/composer/autoload_real. php trên dòng 73 Lỗi nghiêm trọng. yêu cầu(). Yêu cầu mở không thành công '/var/www/html/M243/vendor/composer/. /magento/mô-đun-liên hệ/đăng ký. php' (include_path='/var/www/html/M243/vendor/magento/zendframework1/library. /usr/share/php’) trong /var/www/html/M243/vendor/composer/autoload_real. php trên dòng 73 Lỗi trên trang web Lỗi trên thiết bị đầu cuối Vì vậy, hãy cho chúng tôi biết cách chúng tôi khắc phục lỗi này Cách khắc phục Không thể mở luồng. Không có tệp hoặc thư mục như vậy trong trình soạn thảo autoload_real. Lỗi php trong Magento 2?Bạn chỉ cần chạy lệnh dưới đây trong thư mục gốc của Magento 1 trình soạn thảo dumpautoload Sự kết luậnRất đơn giản phải không? . Không có tệp hoặc thư mục như vậy trong trình soạn thảo autoload_real. lỗi php” trong Magento 2. Hãy cho tôi biết nếu lỗi vẫn còn. Nếu bạn gặp phải bất kỳ lỗi nào khác khi làm việc với Magento 2, hãy liên hệ với Nhà phát triển Magento có kinh nghiệm của chúng tôi. Chia sẻ bài viết với những người bạn Magento khác của bạn và giữ liên lạc với chúng tôi để có thêm hướng dẫn về Magento Đã bao nhiêu lần bạn thấy một đoạn mã dường như được viết vội vàng? . Trong một số trường hợp, nó được viết bởi người khác, nhưng thường thì những sáng tạo của chính bạn, nếu có đủ thời gian, sẽ khiến bạn phải suy nghĩ. "ai đã viết cái thứ tào lao này"? . Đã đến lúc bắt đầu phân tích mã tĩnh trong PHP Giữ mã trong tầm kiểm soát là một chuyện, nhưng tệ hơn nữa là thực tế là không có tiêu chuẩn mã chung nào. Các dự án, khung và thư viện mã nguồn mở khổng lồ áp dụng các tiêu chuẩn lập trình của riêng họ. Vấn đề đã được chú ý cách đây một thời gian và nó đã dẫn đến nguồn gốc của Khuyến nghị tiêu chuẩn PHP (PSR). Đó là một tài liệu được thực hiện bởi các tác giả của các dự án PHP phổ biến nhất. Mã tốt so với mã xấuMặc dù các đề xuất chính (PSR-0 đến PSR-4) đã được phần lớn cộng đồng PHP thừa nhận là thực tế standard, later attempts at unifying more common application elements often failed and so many people have left the project since, including the authors of such famous projects as Symfony, Laravel, Doctrine or Guzzle. Tiêu chuẩn cạnh tranhCác nhà phát triển cũng thay đổi các tiêu chuẩn về chất lượng và độ sạch của mã. Việc thiếu các tiêu chuẩn mã hóa làm sạch ở cấp độ dự án có thể dẫn đến các tranh chấp không cần thiết trong quá trình Đánh giá mã Hai loại ngườiDuy trì chất lượng mã khá tốt không phải là một nhiệm vụ dễ dàng. Dưới đây, tôi sẽ cố gắng chỉ cho bạn một vài công cụ phân tích mã tĩnh, có thể giúp bạn điều đó Nhưng phân tích mã tĩnh là gì?Phân tích mã tĩnh PHP là một hành động được thực hiện bởi công cụ phân tích mã tĩnh, được thiết kế để đọc mã nguồn PHP mà không thực sự chạy nó. Thực hiện phân tích như vậy thường là một phần của quy trình Tích hợp liên tục. Máy phân tích tĩnh cho phép lập trình viên giới hạn và dự đoán hành vi của phần mềm mà không cần chạy nó Bộ phân tích mã tĩnh cũng đơn giản hóa và giúp người đánh giá kiểm tra mã, theo quy tắc “cái gì có thể tự động hóa thì nên tự động hóa” Sự đa dạng của các công cụ phân tích mã tĩnh trong cộng đồng PHP là khá lớn. Một số trong số đó là
Thông tin thêm về ba điều đó sau. Ngoài chúng, còn có rất nhiều công cụ khác. Theo kinh nghiệm cá nhân của tôi, tôi chỉ sử dụng chúng một cách tiết kiệm, nhưng một số trong số chúng chắc chắn khả thi. Bạn có thể dùng thử
Bạn có thể sửa mã của mình theo một tiêu chuẩn đã chọn, bao gồm cả những tiêu chuẩn được phát triển bởi các cộng đồng cụ thể như Symfony
Sửa lỗi vi phạm tiêu chuẩn mã hóa và mã hóa các tệp PHP, JS và CSS
Một bộ phân tích mã với mục tiêu chứng minh tính không chính xác, tránh dương tính giả
Hoạt động với nhiều khung, cung cấp các báo cáo đẹp
Nó có thể giúp bạn nâng cấp PHP của bạn
Cái này có cộng đồng lớn và hỗ trợ rất nhiều ngôn ngữ ngoài PHP
Nó mô tả chính nó như một công cụ giúp trực quan hóa và thực thi các quyết định kiến trúc. Vẫn đang trong quá trình phát triển Trong phần tiếp theo của bài viết, tôi sẽ giới thiệu cho bạn ba công cụ phân tích mã yêu thích của tôi, mà tôi sử dụng trong hầu hết các dự án của mình. ECS, PHPStan và Psalm đã nói ở trên
Như tôi đã đề cập trước đó, các dự án thường có các phong cách viết mã khác nhau, “cũ”. Lập trình viên tham gia dự án cũng có thói quen riêng. Đó là lý do tại sao cấu hình của máy phân tích phải được cá nhân hóa cho từng dự án và phải được lưu trong kho lưu trữ của dự án đó. Để tạo thuận lợi cho quá trình cấu hình, tôi sẽ chỉ cho bạn một số tệp cấu hình cơ bản mà chúng tôi sử dụng tại Ngôi nhà phần mềm Sửa mã của tôiTrước khi bạn bắt đầu sửa mã của mình, bạn nên tìm hiểu một số quy tắc có thể giúp ích cho bạn trong suốt quá trình
Như đã nói và làm xong, chúng ta có thể tiến hành kiểm tra các công cụ EasyCodingStandard – một công cụ để cai trị tất cảECS là một trình phân tích mã tĩnh được tạo bởi Tomas Votruba và những người đóng góp. Nó có thể tự động sửa hầu hết các lỗi mã của bạn. Nó chứa các quy tắc từ PHP Code Fixer, Code Sniffer, Slevomat và Simplify. Ngoài ra, nó đơn giản hóa rất nhiều cấu hình của chúng. sao mà tin được? . Bên dưới, có một cấu hình ECS mẫu mà tôi sử dụng (với một số tùy chỉnh) trong hầu hết các dự án của mình Được rồi, nhưng bạn có thể hỏi "làm thế nào để sử dụng nó?"
Làm điều này có thể cải thiện đáng kể chất lượng mã của bạn. Nhưng này, chúng ta vẫn chưa xong. Hãy xem bạn có thể cải thiện điều gì khác bằng cách sử dụng một số công cụ khác PHPStanPHPStan là một công cụ hữu ích khác. Cấu hình của nó được đơn giản hóa đến mức tối thiểu – bạn chọn một trong các cấp độ được xác định trước. Ngoài ra, bạn có thể mở rộng khả năng của nó bằng cách sử dụng một trong nhiều tiện ích mở rộng. Nhược điểm là máy phân tích này không có chức năng sửa mã tự động. Đây là một cấu hình mẫu mực. Một lần nữa, hãy trả lời câu hỏi. Làm thế nào để sử dụng nó?
thánh vịnhCông cụ cuối cùng mà tôi sử dụng hàng ngày được gọi là Psalm. Nó được thực hiện bởi Vimeo. Thật không may, giống như PHPStan, mã của bạn sẽ không được sửa tự động. Việc cấu hình được thực hiện thông qua một tệp XML và cung cấp rất nhiều khả năng. Khuyến nghị của tôi là bắt đầu với tất cả các quy tắc ở mức tối thiểu là “cảnh báo”, dần dần loại bỏ chúng. Cấu hình cuối cùng sẽ như thế này Làm thế nào để sử dụng nó?
Nếu bạn muốn xem một số ví dụ thực tế về các công cụ nói trên, tôi khuyên bạn nên truy cập ví dụ hoạt động của chúng tôi về những công cụ phân tích đó trên kho lưu trữ GitHub. Điều gì tiếp theo để phân tích mã tĩnh PHP?Bây giờ, mã trông sạch hơn nhiều. Với công cụ phân tích tĩnh PHP, bạn có thể
Nhưng chờ đã, bộ não của bạn không hài lòng với kiến thức này sao? . “Tại sao có quá nhiều công cụ phân tích mã tĩnh PHP này? Nếu vậy, thì tôi muốn giới thiệu cho bạn một số bài viết kỹ thuật chi tiết hơn trên blog xuất sắc của Tomas Votruba, người tạo ra ECS đã nói ở trên, hy vọng sẽ trả lời được những câu hỏi đó
Bạn không muốn đọc chúng nhưng mã PHP của bạn vẫn cần phân tích mã tĩnh thích hợp?Tại The Software House, chúng tôi có một nhóm các nhà phát triển PHP rất tận tâm, những người sẽ sẵn lòng kiểm soát kiểu mã của bạn. Để nhận được tư vấn miễn phí, tất cả những gì bạn cần làm là điền vào mẫu liên hệ Liên hệ chúng tôi Jarosław Jakubowski Nhà phát triển PHP cao cấp Nhà phát triển phần mềm với hơn 12 năm kinh nghiệm (trong đó có 7 năm toàn thời gian) trong việc tạo các ứng dụng PHP. Người đam mê mã sạch và thử nghiệm. Cộng tác viên nguồn mở. Đam mê núi rừng. người đi bộ đường dài, người leo núi, người du lịch trượt tuyết, người leo núi, nhà thám hiểm hang động, thành viên của Hiệp hội leo núi Ba Lan (PZA) |