Back to templates

Template details

PHP-Interview

Chinese-language interview prep notes covering PHP, MySQL, Linux, networking, data structures, algorithms, design patterns, and caching.

About this template

PHP-Interview is a personal interview-preparation knowledge base written in Chinese, covering PHP, MySQL, Linux, computer networking, data structures and algorithms, design patterns, message queues, and caching. It is published as a browsable documentation site built with VitePress and hosted on GitHub Pages.

What is PHP-Interview?

PHP-Interview is a collection of study notes assembled by developer xianyunyh to prepare for PHP backend interviews. The repository's markdown files are rendered by VitePress into a searchable online book at xianyunyh.github.io/PHP-Interview, and the same files can be read directly on GitHub. It accepts no input beyond reader attention — it is a reading resource, not a runtime library.

What topics does it cover?

The notes are organized into numbered directories. LNMP covers Linux commands, network commands, crontab, inode, shell, sed, awk, Linux IO models, Vim, Nginx, and LAMP/LNMP environment setup. MySQL has dedicated chapters on SQL standards, the three normal forms, storage engines, transactions, locks, indexes, explain output, optimization, and index principles with slow-query tuning. MongoDB gets one chapter.

Computer networking spans IP, TCP, UDP, HTTP, HTTPS, HTTP/2, and WebSocket. Data structures include arrays, linked lists, stacks, hash tables, strings, and binary trees, plus a collection of classic LeetCode binary-tree problems. Algorithms cover binary search, dynamic programming, and bubble/selection/insertion/shell/quick sorts.

PHP-specific depth

The PHP section goes into language internals: PHP 7 features, the PHP execution model, the Zval structure, the HashTable implementation, and PHP-FPM configuration options. It tracks release notes for PHP 8, 8.1, and 8.2, and includes a PHP manual digest covering syntax, variables, operators, flow control, functions, OOP, namespaces, and error handling.

Interview and career sections

The 面试 (interview) directory goes beyond technical Q&A: it includes chapters on answering questions about why you left a job, writing a resume, handling a gap in employment, questions to ask interviewers, and salary negotiation. There are four written-test papers and multiple mock interview question sets.

Tooling and deployment

The site uses VitePress. Local preview runs through npm install, then npm run docs:dev on port 5173; npm run docs:build emits static files to .vitepress/dist. Pushing to master triggers a GitHub Actions workflow that deploys to GitHub Pages — the repository instructions note that the Pages source must be switched from branch-based Jekyll builds to GitHub Actions for this to take effect.

Who is it for?

  • PHP developers preparing for backend interviews: work through the MySQL index and transaction chapters, then test recall with the mock question sets.
  • Candidates brushing up on fundamentals: use the networking and data-structure sections to fill gaps in TCP/HTTP and tree algorithms.
  • Job seekers working on soft skills: read the resume-writing and salary-negotiation chapters before applying.

Repository details

The GitHub repository has roughly 1,171 stars, accepts pull requests and corrections, and appends a list of external reading links including the PHP 7 internals write-ups, nikic's HashTable and zval articles, Swoole, and a PHP design-patterns implementation repository.

Screenshot of PHP-Interview