Claude Code with PHP course
Unleash the power of Claude Code to speed up your development
- Duration
- 1 hour of alignment: assessment of your level and of your development environment.
Then 7 hours of teaching. - Prerequisites
- - Solid grounding in PHP development
- PhpStorm + licence
- Claude Code set up - Number of participants
- One-to-one training.
Small group possible if levels are comparable. - Location
- Remote
- Trainer contact
- Hamed M.
- Price
- $priceInEuros = 600 + ($traineeCount -1) * 100;
- Funding options
- No
The foundation: CLAUDE.md
The file Claude reads at the start of every session. Most of this section is about what you leave out of it.
- The three levels and their scope: yours across every project, the repository's for the team, the local one for your own unversioned settings.
- What belongs there: the project's conventions, its pitfalls, the rules of judgement.
- What does not belong: an instruction that must apply every single time — that is a hook's job — and reference documentation, which is read on demand.
- Writing instructions that hold: short, imperative, verifiable, and born of a real mistake rather than an intention.
- What the file costs: it takes up context at every session. Measure before adding a line.
- Bootstrap with
/init, then correct it session after session.
The "memories"
What Claude carries from one session to the next, and why it differs from a CLAUDE.md.
- The distinction that governs everything: memory is learned as the work goes, a CLAUDE.md is decided and reviewed.
- The four kinds: who you are, the corrections you have given, the project's constraints, external resources.
- What not to store: what the repository already states, and what is only true for the length of one conversation.
- How a memory resurfaces — and why to check it before acting: it dates from the day it was written.
- Upkeep: merge duplicates, delete what has become false.
Skills
A set of instructions kept aside, loaded only when the subject comes up.
- The problem they solve: a growing CLAUDE.md costs you at every session, a skill only costs you the day it is needed.
- The anatomy: a folder, a
SKILL.md, a name — and a description, which is what triggers loading. That is the line to get right. - The scopes: a project skill, versioned and shared with the team; a personal skill; a skill shipped by a plugin.
- Triggering one by hand, or letting it come.
- Workshop: write the skill for a procedure you already repeat.
Hooks
A script run by the tool, not an instruction entrusted to the model. Whatever must happen every time lives here.
- The available events: session start, message sent, before and after a tool call, end of turn.
- The wiring in
settings.json, and the trap: hooks are frozen at startup — restart the session after changing them. - What a hook can do: inject context, warn, and even block a tool call.
- Four production examples: inject the technical documentation at session start, inject the deployment runbook as soon as a production intent is detected, warn before an infrastructure file is edited, clear caches at the end of a turn.
- Writing, testing and debugging a hook.
Cross-repository configuration
- What is shared across all your repositories, and what must stay specific to one project.
- The settings layers — user, project, local: which one wins, and where a permission belongs.
- Sharing skills and hooks across repositories without duplicating them.
- Plugins: shipping a team a coherent set of skills, hooks and commands.
- Shared MCP servers: database, browser, issue tracker.
- A real case: two projects living on the same machine, with shared infrastructure and documentation that cross-references itself.
Security
- Permissions: what you allow once, what you allow always, what you never delegate.
- Secrets: what must enter neither a repository nor a session.
- Irreversible actions — migrations, deletions, production — and the rule of prior agreement.
- Prompt injection: anything coming from a web page, a ticket or a third-party file is data, never an instruction.
- Reviewing what is produced: what the tool cannot guarantee on your behalf.
- Hooks as guardrails, and the traceability of changes.
Note
Every notion is applied to your repository during the day: you leave with a working setup of your own, not with examples.