Làm cách nào để chạy mã php trong văn bản cao siêu 3?

Gỡ lỗi là quá trình tìm lỗi và lỗi trong mã đã cho và sửa chúng. Trình chỉnh sửa tuyệt vời bao gồm nhiều plugin khác nhau có tính năng sửa lỗi, giúp tìm lỗi dễ dàng

Trong chương này, bạn sẽ học cách gỡ lỗi một ứng dụng web PHP. Sublime sử dụng plugin gỡ lỗi Sublime TestX cho mục đích này. Các tính năng của plugin này là -

  • Nó là một tiện ích mở rộng được sử dụng để gỡ lỗi các tệp và tập lệnh PHP

  • Cung cấp một danh sách các khả năng gỡ lỗi và lập hồ sơ

  • Duy trì dấu vết ngăn xếp và các tham số thời gian thực như hiển thị và chức năng

Cài đặt Plugin tuyệt vời

Để cài đặt plugin Sublime Text Xdebug, bạn sẽ phải thực hiện các bước sau –

Bước 1 - Cài đặt cài đặt bảng điều khiển gói bằng phím tắt Ctrl+Shift+P hoặc Cmd+shift+P

Bước 2 - Sau khi cài đặt thành công ứng dụng khách Xdebug, tệp cấu hình sẽ được lưu trong thư mục Gói đã cài đặt. Tệp cấu hình là tệp JSON bao gồm các tham số để gỡ lỗi ứng dụng web PHP

Bước 3 - Bắt đầu phiên gỡ lỗi của tệp PHP bằng phím tắt Ctrl+F9. Bạn cũng có thể làm điều đó bằng tùy chọn Bắt đầu gỡ lỗi bằng bảng lệnh

Bước 4 - Các cửa sổ phân chia của XdebugClient sẽ hiển thị đầu ra của tệp PHP. Nó giữ một quá trình gỡ lỗi từng dòng mã. Tham khảo ảnh chụp màn hình sau để hiểu rõ hơn -

Gần đây, rất nhiều người trong cộng đồng PHP đã kiểm tra PHPStorm, bao gồm cả tôi và hầu hết các nhà phát triển mà tôi làm việc cùng. Chúng tôi yêu thích mã thông minh mà chúng tôi nhận được từ PHPStorm, nhưng vẫn bỏ lỡ tốc độ, khả năng khởi động nhanh và sự tiện lợi của Sublime Text

Trước khi tôi mù quáng cho rằng PHPStorm là cách duy nhất để đi, tôi muốn xem. Tôi có thể mang những thứ mà một IDE tập trung vào PHP cung cấp cho các nhà phát triển PHP trở lại Sublime Text và tận dụng tối đa cả hai thế giới không?

Hãy bắt đầu với một danh sách nhanh các cách mà PHPStorm thực sự tạo nên sự khác biệt đối với tôi. Xin lưu ý. Có hàng triệu tính năng khác mà PHPStorm cung cấp một cách độc đáo, nhưng thành thật mà nói, đó là những tiện ích nhỏ bé mà tôi thấy mang lại hiệu quả cao nhất

Cũng lưu ý. Đây là Sublime Text 3 mà chúng ta đang nói đến

Những gì tôi phải có từ PHPStorm

Nếu không có hầu hết các tính năng tập trung vào PHP tuyệt vời này, thật khó để đề xuất sử dụng thứ gì khác ngoài PHPStorm, ngay cả khi nó chậm hơn, đắt hơn và sử dụng nhiều bộ nhớ hơn. Vì thế. Chúng tôi có thể sao chép chúng trong Sublime Text không?

  • Auto-use [nhập] các lớp
  • Lớp FQCN hoàn thành nội tuyến
  • Dễ dàng điều hướng đến định nghĩa của biểu tượng
  • dễ dàng xây dựng tiêm
  • Làm nổi bật nhập khẩu không sử dụng
  • máng xối Git
  • Đánh hơi mã/xác thực PSR-2
  • Hoàn thành mã. PHP
  • Hoàn thành mã. mã số dự án

kiểm soát gói

Trước khi chúng ta nói về bất cứ điều gì khác, ít nhất bạn cần biết cách cài đặt các gói trong Sublime Text

Nếu bạn chưa cài đặt, hãy cài đặt Kiểm soát gói ngay bây giờ

Trừ khi có quy định khác, mọi gói sau gói này phải được cài đặt bằng Kiểm soát gói

Trình đồng hành tuyệt vời của PHP

Gói tập trung nhiều nhất vào PHP cho Sublime Text được gọi là Sublime PHP Companion

Giống như hầu hết các gói, nó chứa một loạt hành động mà bạn có thể thực hiện. ~~Chúng được ánh xạ tới các phím nhất định theo mặc định, nhưng bạn luôn có thể ánh xạ lại chúng. ~~ cập nhật. không còn sơ đồ bàn phím theo mặc định nữa. Tìm hiểu thêm về cách thiết lập sơ đồ bàn phím PHPCompanion tại đây

  • find_use [F10] - Khi con trỏ của bạn ở trên tên lớp, lệnh này giúp bạn dễ dàng use [nhập] lớp đó.
  • expand_fqcn [F9] - Giống như find_use nhưng thay vì mở rộng lớp trong khối nhập, nó mở rộng nội tuyến FQCN của nó.
  • import_namespace [F8] - Thêm không gian tên cho tệp hiện tại dựa trên đường dẫn của tệp
  • goto_definition_scope [shift+F12] - Giống như goto_definition gốc của Sublime Text [được mô tả bên dưới], nhưng được sắp xếp theo cách nhận biết PHP

Gói này không hoàn hảo và rõ ràng nó không sáng bằng PHPStorm khi phát hiện các không gian tên và phân tích cú pháp một số trường hợp cạnh kỳ lạ. Nhưng đối với công việc hàng ngày, đây là một sự thúc đẩy rất lớn trong lĩnh vực kiến ​​thức mã PHP

Tất cảTự động hoàn thành

Đáng buồn thay, Sublime PHP Companion không đánh hơi các lớp của bạn và cung cấp cho bạn tính năng tự động hoàn thành, nhưng SublimeAllAutocomplete lại đăng ký tên của tất cả các ký hiệu [hàm, lớp, v.v. ] trong bất kỳ tệp nào bạn đã mở trong các tab khác và thêm chúng vào thanh ghi tự động hoàn thành

Điều này không hoàn toàn giống với tính năng tự động hoàn thành đầy đủ nhạy cảm với mã vùng người dùng, nhưng nó giúp ích rất nhiều

Cmd-click để định nghĩa chức năng

Sublime PHP Companion giúp dễ dàng nhấp chuột phải vào các chức năng và đi đến định nghĩa của chúng, nhưng lối tắt này mang lại CMD-click-to-definition của PHPStorm. FYI, trong Sublime Text CMD [hoặc phím ctrl của windows hoặc bất cứ thứ gì trên các hệ thống khác] được gọi là "Super"

Đầu tiên, tạo một tệp sơ đồ chuột của người dùng. Nếu chưa có thì vào đây

Linux Tạo Default [Linux].sublime-mousemap trong ~/.config/sublime-text-3/Packages/User

Mac Tạo use0 trong use1

Windows Tạo use2 trong use3

Tiếp theo, đặt cái này vào tệp

[
    {
        "button": "button1",
        "count": 1,
        "modifiers": ["ctrl"],
        "press_command": "drag_select",
        "command": "goto_definition"
    }
]

Bạn vừa dạy Sublime Text cái này. "khi tôi giữ ctrl và nhấp vào nút một, hãy kích hoạt lệnh use4. " Xong. [nguồn chính thức]

Ghi chú. Ban đầu tôi muốn đề xuất sử dụng công cụ sửa đổi use5, vì vậy nó sẽ giống như PHPStorm;

Đánh hơi mã và PHP_CodeSniffer

PHPCS tuyệt vời

Có một gói tên là Sublime PHPCS mang đến PHP_CodeSniffer, trình nói dối của PHP, PHP Mess Detector và Scheck [?] để xử lý mã của bạn

Bạn có thể điều chỉnh tất cả các loại cài đặt, nhưng về cơ bản, bạn sẽ chạy nó mỗi khi bạn lưu tệp của mình [tốt, nhưng có thể gây phiền nhiễu] hoặc mỗi khi bạn kích hoạt nó từ bảng lệnh [nhấn use7 và sau đó gõ cho đến khi . Sniff this file"] hoặc phím tắt [use8 theo mặc định]

Bạn sẽ nhận được những điểm nổi bật và một danh sách ở đầu tất cả những nơi mà mã của bạn không thỏa mãn kẻ nói dối

Lưu ý rằng gói này và bất kỳ gói nào khác dựa vào dò mã và linting sẽ yêu cầu cài đặt các ứng dụng dòng lệnh, vì vậy hãy nhớ truy cập trang web của họ và đọc hướng dẫn của họ

Plugin PHP_CodeSniffer Sublime Text 2/3

Thật thú vị, có một plugin tương đối ít được chú ý làm điều tương tự [nhưng chỉ dành cho PHPCS] được viết bởi cùng một nhóm đã viết PHP CodeSniffer, vì vậy nó cũng đáng để kiểm tra; . ]

Tuy nhiên, tôi chưa bao giờ sử dụng cái này, vì vậy hãy thận trọng

Mike Francis PHP CS Fixer Build Script

Mike Francis cũng đã chia sẻ một tập lệnh xây dựng tùy chỉnh mà anh ấy đã viết để chạy PHP-CS-Fixer trên mã của bạn bất cứ khi nào bạn kích hoạt nó. Điều đó có nghĩa là nó thực sự sẽ thực thi PSR-2 [hoặc bất kỳ tiêu chuẩn PHP-CS-Fixer nào khác mà bạn chuyển nó] trên mã của bạn cho bạn

Taylor Otwell thực sự đã chia sẻ kịch bản này với tôi, nhưng anh ấy đã viết nó không đẹp như Mike đã làm. . ] Tuy nhiên, anh ấy đã đề cập rằng bạn có thể muốn đặt tùy chọn này. use9 Thao tác này sẽ ngăn không cho bảng lệnh hiển thị kết quả của bạn mọi lúc, điều này có thể rất nhanh gây khó chịu

SublimeLinter

SublimeLinter PHP [và phụ thuộc bắt buộc của nó, SublimeLinter] dựa vào trình nói dối tích hợp sẵn của PHP [giống như plugin Sublime PHPCS ở trên]. Đây là một phiên bản đơn giản hơn chỉ chạy kẻ nói dối, không có gì khác

DocBlockr

Nếu bạn là kiểu người sử dụng PHPStorm, thì có nhiều khả năng bạn là kiểu người viết các khối Tài liệu. [Chỉ nói thôi]

DocBlockr giúp việc tạo các khối tài liệu mới trở nên đơn giản, nhưng quan trọng hơn, nếu bạn tạo một khối tài liệu ngay phía trên một hàm đã xác định, nó sẽ trích xuất thông tin tham số của hàm đó và điền trước vào khối tài liệu của bạn. bùng nổ

người trợ giúp Git

Văn bản tuyệt vời Git

Bạn có phải là kiểu người ghét chuyển từ IDE sang ứng dụng khách đầu cuối/Git của mình không?

GitMáng xối

GitGutter hiển thị cho bạn thông tin khác về trạng thái của từng dòng--nó đã được sửa đổi, chèn hay xóa chưa?

Điều này gần như không mạnh bằng Git máng xối của PHPStorm, nhưng đó là một bước đi đúng hướng

Đánh dấu cú pháp

  • PHP-Twig cho Cành cây
  • Laravel Blade Highlighter cho Laravel Blade
  • Đánh dấu khung - hiển thị dấu ngoặc bắt đầu và kết thúc trong rãnh cho khối mà con trỏ của bạn hiện đang ở trong đó

Xây dựng đơn vị PHP

Có một plugin tuyệt vời giúp chạy PHPUnit cực kỳ dễ dàng từ bảng lệnh hoặc phím tắt. đơn giảnPHPUnit

Đúng như tên gọi của nó, bạn cài đặt gói và bạn đã thiết lập và chạy

MãIntel

CodeIntel được cho là cung cấp thông tin tình báo Sublime Text về ngôn ngữ bạn đang làm việc. Nó sẽ cung cấp tính năng tự động hoàn thành, chuyển đến định nghĩa dễ dàng và thông tin về chức năng bạn hiện đang làm việc

Tại sao tôi cứ nói "nên" và "phải làm"? . Có bạn?

Các plugin khác

Khi tôi hỏi trên Twitter, rất nhiều người đã chia sẻ plugin. Vì tôi không sử dụng những thứ này nên tôi chỉ có thể chia sẻ một cách mơ hồ, nhưng tôi chắc chắn rằng tất cả chúng đều đáng để kiểm tra nhanh

  • ApplySyntax mở rộng khả năng của Sublime Text để xác định cú pháp nào sẽ áp dụng cho tệp hiện tại của bạn
  • DashDoc giúp người dùng Mac có ứng dụng Dash dễ dàng tra cứu bất kỳ từ nào trong Dash
  • Hiển thị tên hàm thêm thông tin vào thanh trạng thái về tệp, lớp và tên hàm/phương thức hiện tại
  • phpfmt trông giống như một giải pháp thay thế cho PHP CS Fixer
  • CodeComplice là mã intel, nhưng mới hơn—có lẽ đây là giải pháp?
  • Máy khách Xdebug
  • EditorConfig là một tiêu chuẩn để chia sẻ các mẫu cấu hình trình chỉnh sửa cụ thể cho từng dự án. Plugin này cho phép bạn nhập và sử dụng chúng trong Sublime Text. [tìm hiểu thêm về định dạng EditorConfig]
  • SublimePrettyJSON là tuyệt vời để nhanh chóng định dạng JSON
  • CaseConversion giúp việc chuyển đổi giữa solid_case và camelCase và PascalCase trở nên đơn giản, đồng thời tách và nối các từ cũng như mọi thứ khác

CodeBug cho Xdebug

Bạn có bỏ lỡ tích hợp Xdebug trong PHPStorm không?

Một số mẹo chung về văn bản tuyệt vời

Bài đăng này không phải là phần giới thiệu về tất cả mọi thứ trong Sublime Text, nhưng tôi muốn đề cập đến một vài phần quan trọng ở đây

Tìm tệp bằng "Goto Anything" [cmd-p]

Nếu bạn nhấn F100, bạn sẽ nhận được bảng màu F101 cực kỳ mạnh mẽ, cho phép bạn dễ dàng tìm thấy các tệp, nhưng bạn có thể đi xa hơn một chút. nếu bạn tìm thấy tệp của mình [e. g. bằng cách gõ F102], bạn cũng có thể kích hoạt mở nó tại một dòng nhất định [F103] hoặc tại một ký hiệu nhất định [F104]

Tìm lệnh bằng Bảng lệnh [cmd-shift-p]

Trong khi bảng F101 cho phép bạn tìm kiếm các tệp trong dự án của mình, thì Bảng lệnh cho phép bạn tìm kiếm các lệnh

Điều này có nghĩa là bất kỳ lệnh nào mà Sublime Text cho phép bạn thực hiện [chạy bản dựng, đổi tên tệp, v.v. ], mà cả những tệp từ các gói của bên thứ ba [Sniff tệp này, v.v. ] có thể chạy hoàn toàn từ bàn phím, ngay cả khi bạn không biết [hoặc không có] phím tắt

Tìm ký hiệu bằng "Ký hiệu Goto" [cmd-r]

Nếu bạn nhấn F106, bạn sẽ nhận được bảng màu F107, sẽ điều hướng đến bất kỳ biểu tượng nào trong tệp hiện tại của bạn

Ký hiệu là những thứ như lớp, phương thức hoặc hàm

Nhiều con trỏ

Nhiều trình soạn thảo đã thêm nhiều con trỏ, nhưng Sublime Text vẫn làm điều đó tốt nhất

Nếu bạn chưa bao giờ thử nó, hãy tìm hiểu về nó ở đâu đó, nhưng đây là phần giới thiệu nhanh

Mở một tập tin. Giữ "siêu" [cmd trên Mac] và nhấp vào một số vị trí xung quanh tệp. Bây giờ hãy bắt đầu gõ. BÙM

Một thủ thuật tuyệt vời khác. Đặt con trỏ của bạn vào một từ phổ biến [ví dụ: tên biến]. Bây giờ nhấn F108 một vài lần. Bây giờ bạn đã chọn một số phiên bản của biến đó và bạn có thể thao tác tất cả chúng cùng một lúc

Hoặc, chọn năm dòng và nhấn F109. Kiểm tra nó

Còn rất nhiều điều bạn có thể làm với điều này nếu bạn sáng tạo

kết hợp mờ

Bạn có biết rằng khi bạn đang sử dụng bất kỳ bảng lệnh nào trong Sublime Text, bạn không cần phải hoàn thành một từ nào không?

Trong hầu hết các trình soạn thảo [như PHPStorm], nếu bạn muốn tìm một tệp có tên use0, bạn có thể nhập use0 hoặc use2, nhưng trong Sublime Text, tất cả những gì bạn cần là một cái gì đó như use3. Chỉ cần nhập đủ thứ tự các chữ cái bạn đang nhập chỉ có thể tồn tại trong chuỗi bạn đang tìm kiếm và bạn sẽ ổn thôi. Bỏ qua một chữ cái ở đây, bỏ qua một dấu gạch chéo ở đó - không vấn đề gì

linh tinh

Còn rất nhiều điều để tìm hiểu về cách hoạt động của Sublime Text và rất nhiều công cụ cũng như khóa học dành cho bạn. Đây không phải là một nguồn tài nguyên toàn diện cho mọi thứ tuyệt vời về Sublime;

Nếu bạn muốn tìm hiểu thêm về Sublime Text, có hai tài nguyên tuyệt vời mà tôi nên xem xét

  • Sublime Text Power User là một bộ sách và video của bạn tôi, Wes Bos dạy cho bạn mọi thứ bạn cần để sử dụng Sublime Text như một ông chủ. Đó là cách dễ dàng nhất để người mới sử dụng Sublime Text bắt đầu và chạy nhanh chóng. Ngoài ra, tôi đã liên hệ với Wes và anh ấy đã đưa cho tôi một phiếu giảm giá use4 để giúp bạn giảm $10 [tuyên bố từ chối trách nhiệm. nó cũng giúp tôi. ]
  • ShortcutFoo là một tài nguyên tuyệt vời để học các phím tắt cho mọi môi trường. Họ có các chương trình cho mọi thứ, từ Vim đến Sublime Text, Photoshop đến Excel

Lời phán quyết

Hãy xem danh sách của chúng tôi và xem những gì chúng tôi đã xử lý

  • ~~Hoàn thành nội tuyến lớp FQCN~~ [Sublime PHP Companion]
  • ~~Dễ dàng điều hướng đến định nghĩa của biểu tượng~~ [Sublime PHP Companion]
  • ~~Điều hướng đến định nghĩa của biểu tượng~~ [Sublime PHP Companion]
  • Dễ dàng tiêm hàm tạo [Macro?]
  • ~~Đánh dấu các mục nhập không sử dụng~~ [SublimeLinter]
  • ~~Máng xối Git~~ [GitGutter]
  • ~~Đánh hơi mã/xác thực PSR-2~~ [SublimePHPCS, v.v. ]
  • Hoàn thành mã. PHP
  • Hoàn thành mã. mã số dự án

Không tệ, thực sự. Hãy nói về những gì còn thiếu

  • Tiêm xây dựng [e. g. đơn giản hóa việc đưa một thuộc tính vào hàm tạo làm thuộc tính, đặt nó trong hàm tạo và xác định thuộc tính lớp] là điều tôi nghĩ có thể được giải quyết bằng một macro thông minh—nhưng tôi chưa thấy macro thông minh đó
  • CodeIntel có ý định cung cấp tính năng hoàn thành mã PHP, vì vậy vấn đề chỉ là làm cho nó hoạt động. Nhưng tôi không nghĩ [sửa tôi nếu tôi sai] bất cứ điều gì trong thế giới Sublime Text tuyên bố sẽ đánh hơi các định nghĩa về mã của bạn và sau đó cung cấp đề xuất tham số và tự động hoàn thành. Vì vậy, đó là một thiếu sót lớn cho chắc chắn. lưu ý, tuy nhiên. AllAutocomplete chắc chắn giảm bớt nỗi đau này một chút

Phán quyết của tôi là gì? . Tôi nghĩ rằng nó sẽ phụ thuộc một số vào dự án, một số vào nhà phát triển và một số vào việc tôi có thể tìm ra giải pháp cho một số vấn đề ở trên hay không. Nhưng tôi chắc chắn đang dựa vào Sublime Text nhiều hơn so với sáu tháng trước—nó quá nhanh

phần tái bút

Có mẹo Sublime Text nào dành cho nhà phát triển PHP mà tôi đã bỏ lỡ không?

Có bất kỳ tính năng nào của PHPStorm mà tôi không đề cập ở đây mà bạn nghĩ là quan trọng đối với bộ công cụ của mọi nhà phát triển không?

Cũng thế. Tôi đã không thể viết điều này nếu không có Adam Wathan, Taylor Otwell, Jeffrey Way và rất nhiều bạn bè khác trên Twitter

Làm cách nào tôi có thể chạy tệp PHP của mình?

php” được đặt trong thư mục “htdocs”. Nếu bạn muốn chạy nó, hãy mở bất kỳ trình duyệt web nào và nhập “localhost/demo. php” và nhấn enter . Chương trình của bạn sẽ chạy.

Làm cách nào tôi có thể làm đẹp mã PHP trong Sublime Text 3?

Cách sử dụng. ctrl + shift + P và nhập Tidy PHP hoặc bạn có thể sử dụng tổ hợp phím ctrl + alt + T.

Tại sao tệp PHP của tôi không mở được?

Nếu bạn đang chạy tập lệnh PHP trên máy tính Windows, bạn cần cài đặt PHP theo cách thủ công . Nếu bạn chưa làm như vậy, mã PHP của bạn sẽ không thực thi. Hướng dẫn về quá trình cài đặt, phiên bản và yêu cầu hệ thống được liệt kê tại trang web PHP.

Chủ Đề