magento-php-specialist

Advanced PHP development for Magento 2 following PSR-12 and Magento coding standards. Use when writing PHP code, implementing business logic, or ensuring code quality. Masters modern PHP features, object-oriented programming, design patterns, and Magento-specific PHP practices.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "magento-php-specialist" with this command: npx skills add maxnorm/magento2-agent-skills/maxnorm-magento2-agent-skills-magento-php-specialist

Magento 2 PHP Specialist

Expert specialist in leveraging advanced PHP techniques and modern practices to create high-performance, maintainable Magento 2 applications following enterprise development standards.

When to Use

  • Writing PHP code for Magento 2
  • Implementing business logic
  • Ensuring code quality and standards
  • Working with modern PHP features
  • Implementing design patterns

PHP Standards (STRICT ENFORCEMENT)

PSR-12 Compliance

  • PSR-12: Strictly adhere to PSR-12 coding standards
  • Magento2 Coding Standard: Follow standards in vendor/magento/magento-coding-standard/Magento2
  • Strict Types: declare(strict_types=1); required
  • EditorConfig: Check project's .editorconfig for indentation (4 spaces), line endings (LF), encoding (UTF-8)

Code Structure Requirements

  • Opening Braces: Classes and methods must have opening braces on their own line (PSR-12)
  • Constructor Property Promotion: Use with readonly modifier where appropriate
  • Type Hinting: All parameters and return types must be type-hinted
  • Strict Comparisons: Always use === and !== (never == or !=)
  • Constructor PHPDoc: Must include @param annotation for each parameter

Modern PHP Features

  • Constructor Property Promotion: Use constructor property promotion
  • Readonly Properties: Use readonly modifier where appropriate
  • Union Types: Use union types for flexible type hints
  • Match Expressions: Use match expressions instead of switch when appropriate
  • Named Arguments: Use named arguments for clarity

Code Example

<?php

/**
 * Copyright © 2025 CompanyName. All rights reserved.
 */

declare(strict_types=1);

namespace CompanyName\ModuleName\Model;

use CompanyName\ModuleName\Api\ConfigInterface;
use CompanyName\ModuleName\Api\RepositoryInterface;

class Service
{
    /**
     * @param RepositoryInterface $repository
     * @param ConfigInterface $config
     */
    public function __construct(
        private readonly RepositoryInterface $repository,
        private readonly ConfigInterface $config
    ) {
    }

    /**
     * @param int $id
     * @return EntityInterface|null
     */
    public function getById(int $id): ?EntityInterface
    {
        if ($id <= 0) {
            return null;
        }

        return $this->repository->getById($id);
    }
}

Best Practices

Object-Oriented Programming

  • Composition Over Inheritance: Prefer composition patterns
  • Dependency Injection: Constructor injection only - avoid service locators
  • Single Responsibility: One purpose per class/method
  • Interface Segregation: Use small, focused interfaces
  • SOLID Principles: Follow SOLID principles

Code Quality

  • Type Safety: 100% type coverage - parameters, return types, properties
  • Error Handling: Comprehensive exception handling
  • Logging: Use \Psr\Log\LoggerInterface for logging
  • Documentation: Minimal PHPDoc with @param, @return, @throws
  • Testing: Write unit tests for business logic

Magento-Specific Patterns

  • Service Contracts: Use service contracts for APIs
  • Repository Pattern: Implement repository pattern for data access
  • Factory Pattern: Use factories for object creation
  • Plugin Pattern: Use plugins to extend functionality
  • Observer Pattern: Use observers for event-driven architecture

References

Focus on writing clean, maintainable PHP code that follows Magento best practices.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

magento-module-developer

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

magento-code-reviewer

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

magento-frontend-developer

No summary provided by upstream source.

Repository SourceNeeds Review
Coding

magento-api-developer

No summary provided by upstream source.

Repository SourceNeeds Review