Trang chủ
Các bài mới
Latest activity
Biên tập viên
Diễn Đàn
Bài viết mới
Tìm kiếm diễn đàn
Tin Mới
Bài viết mới
New resources
Bài đăng tiểu sử mới
Hoạt động mới nhất
Resources
Latest reviews
Search resources
Thành Viên
Khách truy cập hiện tại
Bài mới trên trang cá nhân
Tìm kiếm bài đăng trong trang cá nhân
Tool
SMTool - Công cụ đăng bài tự động Facebook
50 SEO Tools
Photoshop online
Facebook Video Down
Cầu nguyện Genshin
Biolink
Genshin map
Đăng nhập
Đăng ký
Mới
Tìm kiếm
Tìm kiếm
Chỉ tìm trong tiêu đề
bởi:
Bài viết mới
Tìm kiếm diễn đàn
Menu
Đăng nhập
Đăng ký
Install the app
Install
28/06 cập nhật đăng ký đăng nhập qua Google & Facebook
Diễn Đàn
Thủ thuật
Thủ thuật phần mềm
Cấu hình PHP Intelephense
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser
.
Reply to thread
Nội dung
<blockquote data-quote="TenHoshi" data-source="post: 27100" data-attributes="member: 1"><p><h3>Code Lens (hiển thị số liệu ngay trên dòng code)</h3> <ul> <li data-xf-list-type="ul"><strong>Implementations: Enable</strong><br /> EN: Show count & peek of class/interface implementations →<br /> VN: Hiện số nơi implement & cho phép peek →<br /> <strong>Bật.</strong> Hữu ích khi làm OOP, trait/interface nhiều.</li> <li data-xf-list-type="ul"><strong>Overrides: Enable</strong><br /> EN: Show override count & peek →<br /> VN: Hiện số method override & peek →<br /> <strong>Bật.</strong> Dễ rà soát kế thừa.</li> <li data-xf-list-type="ul"><strong>Parent: Enable</strong><br /> EN: Show if a method has a parent impl & peek →<br /> VN: Báo có implement ở cha & peek →<br /> <strong>Bật.</strong> Điều hướng nhanh.</li> <li data-xf-list-type="ul"><strong>References: Enable</strong><br /> EN: Show reference count & peek →<br /> VN: Đếm nơi được tham chiếu & peek →<br /> <strong>Bật.</strong> Tìm ảnh hưởng khi refactor.</li> <li data-xf-list-type="ul"><strong>Usages: Enable</strong><br /> EN: Show trait usages count & peek →<br /> VN: Đếm nơi dùng trait & peek →<br /> <strong>Bật.</strong> Dự án nhiều trait sẽ cần.</li> </ul><p></p><h3>Compatibility (tương thích kiểu)</h3> <ul> <li data-xf-list-type="ul"><strong>Correct For Array Access/Traversable Array Union Types</strong><br /> EN: Normalise ArrayAccess|T[] → ArrayAccess<mixed,T> →<br /> VN: Chuẩn hoá union có mảng sang generic →<br /> <strong>Bật.</strong> Gợi ý & kiểm tra type ổn định hơn.</li> <li data-xf-list-type="ul"><strong>Correct For Base Class Static Union Types</strong><br /> EN: Resolve BaseClass|static thành static →<br /> VN: Ưu tiên static đúng ngữ nghĩa late-static →<br /> <strong>Bật.</strong> Chính xác khi kế thừa.</li> <li data-xf-list-type="ul"><strong>Prefer Psalm Phpstan Prefixed Annotations</strong><br /> EN: Ưu tiên tag @psalm-/@phpstan- →<br /> VN: Dựa vào chú thích Psalm/PhpStan để suy luận kiểu →<br /> <strong>Bật</strong> (nếu bạn dùng Psalm/PhpStan hoặc anotations có sẵn).<br /> <strong>Tắt</strong> nếu dự án không dùng các tag này để tránh nhiễu.</li> </ul><p></p><h3>Completion (gợi ý code)</h3> <ul> <li data-xf-list-type="ul"><strong>Fully Qualify Global Constants And Functions</strong><br /> EN: Suggest with leading \ →<br /> VN: Gợi ý kèm backslash global →<br /> <strong>Tuỳ.</strong> Bật nếu bạn thích rõ scope; <strong>Tắt</strong> nếu thích code gọn.</li> <li data-xf-list-type="ul"><strong>Insert Use Declaration</strong> ✔<br /> EN/VN: Tự thêm use khi chọn symbol namespaced →<br /> <strong>Bật.</strong> Tiết kiệm thao tác import.</li> <li data-xf-list-type="ul"><strong>Max Items (100)</strong><br /> EN/VN: Số item tối đa trong completion →<br /> <strong>100 là hợp lý.</strong> Tăng nếu bạn muốn nhiều hơn, nhưng có thể rối.</li> <li data-xf-list-type="ul"><strong>Suggest Object Operator Static Methods</strong><br /> EN: Cho gợi ý static methods với -> →<br /> VN: Đề xuất static method khi dùng toán tử đối tượng →<br /> <strong>Tắt</strong> để tránh gọi nhầm (khuyến nghị). <strong>Bật</strong> nếu bạn cố ý muốn thấy tất cả.</li> <li data-xf-list-type="ul"><strong>Trigger Parameter Hints</strong><br /> EN/VN: Tự chèn () và bật hint tham số →<br /> <strong>Bật.</strong> Viết nhanh, giảm sai sót.</li> </ul><p></p><h3>Diagnostics (cảnh báo & lỗi)</h3> <ul> <li data-xf-list-type="ul"><strong>Enable</strong><br /> EN/VN: Bật hệ thống chẩn đoán →<br /> <strong>Bật.</strong></li> <li data-xf-list-type="ul"><strong>Run: onType</strong><br /> EN: Chạy khi gõ →<br /> VN: Cảnh báo “real-time” →<br /> <strong>Giữ onType</strong> nếu máy khoẻ; <strong>đổi onSave</strong> nếu bị lag.</li> <li data-xf-list-type="ul"><strong>Argument Count / Deprecated / Duplicate Symbols / Embedded Languages / Implementation Errors / Language Constraints / Member Access / Type Errors / Undefined (Class Constants / Constants / Functions / Methods / Properties / Types / Variables) / Unexpected Tokens / Unused Symbols</strong><br /> EN/VN: Từng mục bật cảnh báo tương ứng →<br /> <strong>Bật tất cả</strong> để code an toàn, trừ khi dự án cũ quá “ồn” thì giảm dần.</li> <li data-xf-list-type="ul"><strong>No Mixed Type Check</strong><br /> EN: Tắt kiểm tra nghiêm với mixed (nới lỏng) →<br /> VN: Cho phép mixed qua dễ hơn →<br /> <strong>Tắt</strong> (khuyến nghị strict). <strong>Bật</strong> nếu codebase nhiều mixed/thiếu khai báo.</li> <li data-xf-list-type="ul"><strong>Relaxed Type Check</strong><br /> EN: Nới lỏng kiểm tra (cho contravariant rộng) →<br /> VN: Dễ dãi hơn với type →<br /> <strong>Tắt</strong> (khuyến nghị strict). <strong>Bật</strong> với dự án legacy để bớt nhiễu.</li> </ul><h3>Environment (môi trường phân giải)</h3> <ul> <li data-xf-list-type="ul"><strong>Document Root</strong><br /> EN: Thư mục entry (chứa index.php) để resolve include/path →<br /> VN: Đặt đúng webroot của app →<br /> <strong>Nên set</strong> (vd: www/ hay public/). Giúp require/include gợi ý đúng.</li> <li data-xf-list-type="ul"><strong>Include Paths</strong><br /> EN/VN: Khai báo include_path/thư viện ngoài →<br /> <strong>Nên set</strong> nếu bạn có lib ngoài (vd: vendor/extra, app/helpers).</li> <li data-xf-list-type="ul"><strong>PHP Version: 8.4.0</strong><br /> EN/VN: Mục tiêu phiên bản PHP để lint/đề xuất →<br /> <strong>Set đúng version chạy thực tế</strong> (vd: 8.1/8.2/8.3). Đặt sai sẽ cảnh báo lệch.</li> <li data-xf-list-type="ul"><strong>Short Open Tag</strong> (on)<br /> EN/VN: Parse <? như open tag →<br /> <strong>Tắt</strong> nếu bạn không dùng short tags (khuyến nghị chuẩn). <strong>Bật</strong> chỉ khi code cũ cần.</li> </ul><h3>Files (tệp)</h3> <ul> <li data-xf-list-type="ul"><strong>Associations</strong><br /> EN/VN: Ánh xạ glob pattern → ngôn ngữ PHP →<br /> <strong>Tuỳ.</strong> Dùng khi cần bật tính năng cho đuôi lạ.</li> <li data-xf-list-type="ul"><strong>Exclude</strong><br /> EN/VN: Loại trừ thư mục khỏi index (git, vendor tests, node_modules, …) →<br /> <strong>Giữ mặc định</strong>, thêm các thư mục build/cache riêng của bạn để tăng tốc.</li> <li data-xf-list-type="ul"><strong>Max Size (1,000,000 bytes)</strong><br /> EN/VN: Tệp lớn hơn sẽ bị bỏ qua language features →<br /> <strong>Giữ mặc định</strong>. Tăng nếu bạn có file PHP lớn bất khả kháng (nhưng cân nhắc chia nhỏ).</li> </ul><h3>Format (định dạng)</h3> <ul> <li data-xf-list-type="ul"><strong>Braces</strong><br /> EN/VN: Kiểu ngoặc {} →<br /> <strong>Tuỳ chuẩn team.</strong> (PSR-12: ngoặc mở xuống dòng cho class/method)</li> <li data-xf-list-type="ul"><strong>Format: Enable<br /> Bật.</strong> Kết hợp Prettier/PHP CS Fixer hoặc phpcbf sẽ đồng nhất hơn.</li> </ul><h3>PhpDoc (template sinh PHPDoc)</h3> <ul> <li data-xf-list-type="ul"><strong>Class / Function / Property Template</strong><br /> EN/VN: Mẫu sinh phpdoc với biến snippet →<br /> <strong>Tuỳ.</strong> Nếu team ghi chú rõ ràng, hãy tuỳ biến để chèn @param, @return, @template, v.v.</li> </ul><h3>Rename</h3> <ul> <li data-xf-list-type="ul"><strong>Exclude</strong><br /> EN/VN: Loại các path khi rename symbol →<br /> <strong>Giữ bỏ vendor/**</strong> (không đụng code vendor). Thêm thư mục generated nếu có.</li> <li data-xf-list-type="ul"><strong>Namespace Mode: single</strong><br /> EN/VN: Phạm vi đổi tên namespace →<br /> <strong>Giữ single</strong> cho an toàn; đổi rộng khi bạn chắc chắn.</li> </ul><h3>Runtime / Stubs / Telemetry / Trace</h3> <ul> <li data-xf-list-type="ul"><strong>Runtime (Node path)</strong><br /> EN/VN: Chọn Node runtime riêng →<br /> <strong>Để mặc định</strong> trừ khi bạn cần bản Node cụ thể.</li> <li data-xf-list-type="ul"><strong>Stubs</strong><br /> EN/VN: Bộ stub cho PHP core & extensions →<br /> <strong>Giữ mặc định</strong>, thêm stub extension bạn thực sự dùng (redis, swoole, amqp, …) để có IntelliSense.</li> <li data-xf-list-type="ul"><strong>Telemetry: Enabled</strong><br /> EN/VN: Gửi ẩn danh usage/crash →<br /> <strong>Tắt</strong> nếu bạn không muốn gửi telemetry.</li> <li data-xf-list-type="ul"><strong>Trace: Server (off)</strong><br /> EN/VN: Log giao tiếp VSCode↔︎server →<br /> <strong>Off</strong> thường ngày; <strong>On</strong> khi debug lỗi Intelephense.</li> <li data-xf-list-type="ul"><strong>Max Memory (0 = auto)</strong><br /> EN/VN: Giới hạn RAM language server →<br /> <strong>Để 0</strong> (auto). Nếu dự án rất lớn và bị out-of-memory, thử tăng (1024–2048).</li> </ul><h3>Gợi ý cấu hình nhanh</h3><h4>1) Strict profile (khuyến nghị dự án mới/typed, PSR-12, ít mixed)</h4> <ul> <li data-xf-list-type="ul">Code Lens: <strong>On</strong> tất cả</li> <li data-xf-list-type="ul">Compatibility: <strong>On</strong> tất cả</li> <li data-xf-list-type="ul">Completion: <strong>InsertUse=On</strong>, <strong>TriggerParamHints=On</strong>, **SuggestStaticWithObject=**Off, <strong>FullyQualifyGlobal</strong> = Tuỳ (Off nếu muốn code gọn)</li> <li data-xf-list-type="ul">Diagnostics: <strong>On</strong> tất cả, <strong>RelaxedTypeCheck=Off</strong>, <strong>NoMixedTypeCheck=Off</strong>, <strong>Run=onType</strong> (đổi onSave nếu lag)</li> <li data-xf-list-type="ul">Environment: <strong>PHP Version = đúng thực tế</strong>, <strong>ShortOpenTag=Off</strong>, set <strong>DocumentRoot</strong>, <strong>IncludePaths</strong> nếu cần</li> <li data-xf-list-type="ul">Files: <strong>Exclude</strong> giữ mặc định + thêm thư mục build/cache riêng, <strong>MaxSize=1,000,000</strong></li> <li data-xf-list-type="ul">Format: <strong>Enable=On</strong>, <strong>Braces</strong> theo PSR-12</li> <li data-xf-list-type="ul">PhpDoc: tuỳ biến template theo chuẩn team</li> <li data-xf-list-type="ul">Rename: <strong>Exclude vendor/</strong>, <strong>NamespaceMode=single</strong></li> <li data-xf-list-type="ul">Stubs: giữ mặc định, thêm extension bạn dùng</li> <li data-xf-list-type="ul">Telemetry: <strong>Off</strong> (nếu không muốn gửi dữ liệu)</li> <li data-xf-list-type="ul">Trace: <strong>Off</strong> (bật khi debug)</li> </ul><h4>2) Legacy profile (dự án cũ, thiếu type-hints, nhiều mixed)</h4> <ul> <li data-xf-list-type="ul">Code Lens: <strong>On</strong></li> <li data-xf-list-type="ul">Compatibility: <strong>On</strong></li> <li data-xf-list-type="ul">Completion: <strong>InsertUse=On</strong>, <strong>TriggerParamHints=On</strong>, <strong>SuggestStaticWithObject=On</strong> (để “thấy hết”), <strong>FullyQualifyGlobal=Off</strong></li> <li data-xf-list-type="ul">Diagnostics: <strong>Enable=On</strong>, <strong>RelaxedTypeCheck=On</strong>, <strong>NoMixedTypeCheck=On</strong>, còn lại <strong>On</strong> nhưng có thể <strong>tắt Unused</strong> tạm nếu quá ồn; <strong>Run=onSave</strong> để đỡ lag</li> <li data-xf-list-type="ul">Environment: <strong>ShortOpenTag=On</strong> (nếu code dùng short tags), PHP Version khớp prod</li> <li data-xf-list-type="ul">Files: mở rộng <strong>Exclude</strong> để nhẹ máy (log/cache/compiled)</li> <li data-xf-list-type="ul">Format: <strong>Enable=On</strong> nhưng khoan auto-format toàn repo (tránh diff lớn)</li> <li data-xf-list-type="ul">PhpDoc: bật auto template để dần “gõ type” vào chú thích</li> <li data-xf-list-type="ul">Telemetry/Trace theo nhu cầu</li> </ul><h3>Ghi chú nhỏ cho team</h3> <ul> <li data-xf-list-type="ul">Nếu bạn đang chuẩn hoá dần sang typed PHP (union types, generics via PHPDoc), nên theo <strong>Strict profile</strong> để Intelephense “ép chuẩn” sớm → bug giảm rõ rệt.</li> <li data-xf-list-type="ul">Nếu đang “gỡ nợ kỹ thuật”, bắt đầu với <strong>Legacy profile</strong>, sau đó <strong>từng bước</strong>: tắt RelaxedTypeCheck, rồi tắt NoMixedTypeCheck, thêm type hint & phpdoc, nâng PHP version target, bật format/PSR-12.</li> </ul></blockquote><p></p>
[QUOTE="TenHoshi, post: 27100, member: 1"] [HEADING=2]Code Lens (hiển thị số liệu ngay trên dòng code)[/HEADING] [LIST] [*][B]Implementations: Enable[/B] EN: Show count & peek of class/interface implementations → VN: Hiện số nơi implement & cho phép peek → [B]Bật.[/B] Hữu ích khi làm OOP, trait/interface nhiều. [*][B]Overrides: Enable[/B] EN: Show override count & peek → VN: Hiện số method override & peek → [B]Bật.[/B] Dễ rà soát kế thừa. [*][B]Parent: Enable[/B] EN: Show if a method has a parent impl & peek → VN: Báo có implement ở cha & peek → [B]Bật.[/B] Điều hướng nhanh. [*][B]References: Enable[/B] EN: Show reference count & peek → VN: Đếm nơi được tham chiếu & peek → [B]Bật.[/B] Tìm ảnh hưởng khi refactor. [*][B]Usages: Enable[/B] EN: Show trait usages count & peek → VN: Đếm nơi dùng trait & peek → [B]Bật.[/B] Dự án nhiều trait sẽ cần. [/LIST] [HEADING=2]Compatibility (tương thích kiểu)[/HEADING] [LIST] [*][B]Correct For Array Access/Traversable Array Union Types[/B] EN: Normalise ArrayAccess|T[] → ArrayAccess<mixed,T> → VN: Chuẩn hoá union có mảng sang generic → [B]Bật.[/B] Gợi ý & kiểm tra type ổn định hơn. [*][B]Correct For Base Class Static Union Types[/B] EN: Resolve BaseClass|static thành static → VN: Ưu tiên static đúng ngữ nghĩa late-static → [B]Bật.[/B] Chính xác khi kế thừa. [*][B]Prefer Psalm Phpstan Prefixed Annotations[/B] EN: Ưu tiên tag @psalm-/@phpstan- → VN: Dựa vào chú thích Psalm/PhpStan để suy luận kiểu → [B]Bật[/B] (nếu bạn dùng Psalm/PhpStan hoặc anotations có sẵn). [B]Tắt[/B] nếu dự án không dùng các tag này để tránh nhiễu. [/LIST] [HEADING=2]Completion (gợi ý code)[/HEADING] [LIST] [*][B]Fully Qualify Global Constants And Functions[/B] EN: Suggest with leading \ → VN: Gợi ý kèm backslash global → [B]Tuỳ.[/B] Bật nếu bạn thích rõ scope; [B]Tắt[/B] nếu thích code gọn. [*][B]Insert Use Declaration[/B] ✔ EN/VN: Tự thêm use khi chọn symbol namespaced → [B]Bật.[/B] Tiết kiệm thao tác import. [*][B]Max Items (100)[/B] EN/VN: Số item tối đa trong completion → [B]100 là hợp lý.[/B] Tăng nếu bạn muốn nhiều hơn, nhưng có thể rối. [*][B]Suggest Object Operator Static Methods[/B] EN: Cho gợi ý static methods với -> → VN: Đề xuất static method khi dùng toán tử đối tượng → [B]Tắt[/B] để tránh gọi nhầm (khuyến nghị). [B]Bật[/B] nếu bạn cố ý muốn thấy tất cả. [*][B]Trigger Parameter Hints[/B] EN/VN: Tự chèn () và bật hint tham số → [B]Bật.[/B] Viết nhanh, giảm sai sót. [/LIST] [HEADING=2]Diagnostics (cảnh báo & lỗi)[/HEADING] [LIST] [*][B]Enable[/B] EN/VN: Bật hệ thống chẩn đoán → [B]Bật.[/B] [*][B]Run: onType[/B] EN: Chạy khi gõ → VN: Cảnh báo “real-time” → [B]Giữ onType[/B] nếu máy khoẻ; [B]đổi onSave[/B] nếu bị lag. [*][B]Argument Count / Deprecated / Duplicate Symbols / Embedded Languages / Implementation Errors / Language Constraints / Member Access / Type Errors / Undefined (Class Constants / Constants / Functions / Methods / Properties / Types / Variables) / Unexpected Tokens / Unused Symbols[/B] EN/VN: Từng mục bật cảnh báo tương ứng → [B]Bật tất cả[/B] để code an toàn, trừ khi dự án cũ quá “ồn” thì giảm dần. [*][B]No Mixed Type Check[/B] EN: Tắt kiểm tra nghiêm với mixed (nới lỏng) → VN: Cho phép mixed qua dễ hơn → [B]Tắt[/B] (khuyến nghị strict). [B]Bật[/B] nếu codebase nhiều mixed/thiếu khai báo. [*][B]Relaxed Type Check[/B] EN: Nới lỏng kiểm tra (cho contravariant rộng) → VN: Dễ dãi hơn với type → [B]Tắt[/B] (khuyến nghị strict). [B]Bật[/B] với dự án legacy để bớt nhiễu. [/LIST] [HEADING=2]Environment (môi trường phân giải)[/HEADING] [LIST] [*][B]Document Root[/B] EN: Thư mục entry (chứa index.php) để resolve include/path → VN: Đặt đúng webroot của app → [B]Nên set[/B] (vd: www/ hay public/). Giúp require/include gợi ý đúng. [*][B]Include Paths[/B] EN/VN: Khai báo include_path/thư viện ngoài → [B]Nên set[/B] nếu bạn có lib ngoài (vd: vendor/extra, app/helpers). [*][B]PHP Version: 8.4.0[/B] EN/VN: Mục tiêu phiên bản PHP để lint/đề xuất → [B]Set đúng version chạy thực tế[/B] (vd: 8.1/8.2/8.3). Đặt sai sẽ cảnh báo lệch. [*][B]Short Open Tag[/B] (on) EN/VN: Parse <? như open tag → [B]Tắt[/B] nếu bạn không dùng short tags (khuyến nghị chuẩn). [B]Bật[/B] chỉ khi code cũ cần. [/LIST] [HEADING=2]Files (tệp)[/HEADING] [LIST] [*][B]Associations[/B] EN/VN: Ánh xạ glob pattern → ngôn ngữ PHP → [B]Tuỳ.[/B] Dùng khi cần bật tính năng cho đuôi lạ. [*][B]Exclude[/B] EN/VN: Loại trừ thư mục khỏi index (git, vendor tests, node_modules, …) → [B]Giữ mặc định[/B], thêm các thư mục build/cache riêng của bạn để tăng tốc. [*][B]Max Size (1,000,000 bytes)[/B] EN/VN: Tệp lớn hơn sẽ bị bỏ qua language features → [B]Giữ mặc định[/B]. Tăng nếu bạn có file PHP lớn bất khả kháng (nhưng cân nhắc chia nhỏ). [/LIST] [HEADING=2]Format (định dạng)[/HEADING] [LIST] [*][B]Braces[/B] EN/VN: Kiểu ngoặc {} → [B]Tuỳ chuẩn team.[/B] (PSR-12: ngoặc mở xuống dòng cho class/method) [*][B]Format: Enable Bật.[/B] Kết hợp Prettier/PHP CS Fixer hoặc phpcbf sẽ đồng nhất hơn. [/LIST] [HEADING=2]PhpDoc (template sinh PHPDoc)[/HEADING] [LIST] [*][B]Class / Function / Property Template[/B] EN/VN: Mẫu sinh phpdoc với biến snippet → [B]Tuỳ.[/B] Nếu team ghi chú rõ ràng, hãy tuỳ biến để chèn @param, @return, @template, v.v. [/LIST] [HEADING=2]Rename[/HEADING] [LIST] [*][B]Exclude[/B] EN/VN: Loại các path khi rename symbol → [B]Giữ bỏ vendor/**[/B] (không đụng code vendor). Thêm thư mục generated nếu có. [*][B]Namespace Mode: single[/B] EN/VN: Phạm vi đổi tên namespace → [B]Giữ single[/B] cho an toàn; đổi rộng khi bạn chắc chắn. [/LIST] [HEADING=2]Runtime / Stubs / Telemetry / Trace[/HEADING] [LIST] [*][B]Runtime (Node path)[/B] EN/VN: Chọn Node runtime riêng → [B]Để mặc định[/B] trừ khi bạn cần bản Node cụ thể. [*][B]Stubs[/B] EN/VN: Bộ stub cho PHP core & extensions → [B]Giữ mặc định[/B], thêm stub extension bạn thực sự dùng (redis, swoole, amqp, …) để có IntelliSense. [*][B]Telemetry: Enabled[/B] EN/VN: Gửi ẩn danh usage/crash → [B]Tắt[/B] nếu bạn không muốn gửi telemetry. [*][B]Trace: Server (off)[/B] EN/VN: Log giao tiếp VSCode↔︎server → [B]Off[/B] thường ngày; [B]On[/B] khi debug lỗi Intelephense. [*][B]Max Memory (0 = auto)[/B] EN/VN: Giới hạn RAM language server → [B]Để 0[/B] (auto). Nếu dự án rất lớn và bị out-of-memory, thử tăng (1024–2048). [/LIST] [HEADING=2]Gợi ý cấu hình nhanh[/HEADING] [HEADING=3]1) Strict profile (khuyến nghị dự án mới/typed, PSR-12, ít mixed)[/HEADING] [LIST] [*]Code Lens: [B]On[/B] tất cả [*]Compatibility: [B]On[/B] tất cả [*]Completion: [B]InsertUse=On[/B], [B]TriggerParamHints=On[/B], **SuggestStaticWithObject=**Off, [B]FullyQualifyGlobal[/B] = Tuỳ (Off nếu muốn code gọn) [*]Diagnostics: [B]On[/B] tất cả, [B]RelaxedTypeCheck=Off[/B], [B]NoMixedTypeCheck=Off[/B], [B]Run=onType[/B] (đổi onSave nếu lag) [*]Environment: [B]PHP Version = đúng thực tế[/B], [B]ShortOpenTag=Off[/B], set [B]DocumentRoot[/B], [B]IncludePaths[/B] nếu cần [*]Files: [B]Exclude[/B] giữ mặc định + thêm thư mục build/cache riêng, [B]MaxSize=1,000,000[/B] [*]Format: [B]Enable=On[/B], [B]Braces[/B] theo PSR-12 [*]PhpDoc: tuỳ biến template theo chuẩn team [*]Rename: [B]Exclude vendor/[/B], [B]NamespaceMode=single[/B] [*]Stubs: giữ mặc định, thêm extension bạn dùng [*]Telemetry: [B]Off[/B] (nếu không muốn gửi dữ liệu) [*]Trace: [B]Off[/B] (bật khi debug) [/LIST] [HEADING=3]2) Legacy profile (dự án cũ, thiếu type-hints, nhiều mixed)[/HEADING] [LIST] [*]Code Lens: [B]On[/B] [*]Compatibility: [B]On[/B] [*]Completion: [B]InsertUse=On[/B], [B]TriggerParamHints=On[/B], [B]SuggestStaticWithObject=On[/B] (để “thấy hết”), [B]FullyQualifyGlobal=Off[/B] [*]Diagnostics: [B]Enable=On[/B], [B]RelaxedTypeCheck=On[/B], [B]NoMixedTypeCheck=On[/B], còn lại [B]On[/B] nhưng có thể [B]tắt Unused[/B] tạm nếu quá ồn; [B]Run=onSave[/B] để đỡ lag [*]Environment: [B]ShortOpenTag=On[/B] (nếu code dùng short tags), PHP Version khớp prod [*]Files: mở rộng [B]Exclude[/B] để nhẹ máy (log/cache/compiled) [*]Format: [B]Enable=On[/B] nhưng khoan auto-format toàn repo (tránh diff lớn) [*]PhpDoc: bật auto template để dần “gõ type” vào chú thích [*]Telemetry/Trace theo nhu cầu [/LIST] [HEADING=2]Ghi chú nhỏ cho team[/HEADING] [LIST] [*]Nếu bạn đang chuẩn hoá dần sang typed PHP (union types, generics via PHPDoc), nên theo [B]Strict profile[/B] để Intelephense “ép chuẩn” sớm → bug giảm rõ rệt. [*]Nếu đang “gỡ nợ kỹ thuật”, bắt đầu với [B]Legacy profile[/B], sau đó [B]từng bước[/B]: tắt RelaxedTypeCheck, rồi tắt NoMixedTypeCheck, thêm type hint & phpdoc, nâng PHP version target, bật format/PSR-12. [/LIST] [/QUOTE]
Name
Xác nhận
Gửi đi
Diễn Đàn
Thủ thuật
Thủ thuật phần mềm
Cấu hình PHP Intelephense
Top