<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/rfc-primary-constructors-bry3feedh" -->

---
title: [RFC] Primary Constructors | daily.dev
description: A PHP internals mailing list thread discussing a proposed RFC for Primary Constructors in PHP. The RFC proposes a new syntax allowing class properties and...
canonical: https://daily.dev/posts/rfc-primary-constructors-bry3feedh
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: [RFC] Primary Constructors | daily.dev
og:description: A PHP internals mailing list thread discussing a proposed RFC for Primary Constructors in PHP. The RFC proposes a new syntax allowing class properties and...
og:url: https://daily.dev/posts/rfc-primary-constructors-bry3feedh
og:image: https://api.daily.dev/og/posts/BRy3fEEdH.png
og:image:alt: [RFC] Primary Constructors
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# [RFC] Primary Constructors

**[externals.io](https://daily.dev/sources/externals)** · 19 min read · 0 upvotes · 0 comments

## Summary

A PHP internals mailing list thread discussing a proposed RFC for Primary Constructors in PHP. The RFC proposes a new syntax allowing class properties and constructor parameters to be declared at the top of the class definition, similar to Kotlin or C# primary constructors. Key debate points include: whether primary constructor bodies should be supported (the RFC excludes them), compatibility with readonly classes and property hooks, anonymous class support (deferred to future scope), and whether the limited scope of the feature justifies adding new syntax. The RFC author argues 30-70% of real-world PHP classes could benefit even without bodies, while critics argue the feature is too restricted to be worth the added complexity.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://externals.io/message/131592>

## Similar posts on daily.dev

- [\[RFC\] Primary Constructors](https://daily.dev/posts/rfc-primary-constructors-ycnogpjon) · externals.io · 0 upvotes · 0 comments
- [\[RFC\] Primary Constructors](https://daily.dev/posts/rfc-primary-constructors-iwpmyko6c) · externals.io · 0 upvotes · 0 comments
- [\[RFC\] Primary Constructors](https://daily.dev/posts/rfc-primary-constructors-oyt14zdsq) · externals.io · 0 upvotes · 0 comments
- [\[RFC\] Primary Constructors](https://daily.dev/posts/rfc-primary-constructors-gsn81azwc) · externals.io · 0 upvotes · 0 comments
- [\[RFC\] Primary Constructors](https://daily.dev/posts/rfc-primary-constructors-n4xhmdxt5) · externals.io · 0 upvotes · 0 comments

---

Tags: [#php](https://daily.dev/tags/php), [#language-design](https://daily.dev/tags/language-design)

[View this post on daily.dev](https://daily.dev/posts/rfc-primary-constructors-bry3feedh)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"[RFC] Primary Constructors","url":"https://daily.dev/posts/rfc-primary-constructors-bry3feedh","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/rfc-primary-constructors-bry3feedh"},"datePublished":"2026-06-29T17:15:02.194Z","dateModified":"2026-06-29T17:15:42.865Z","description":"A PHP internals mailing list thread discussing a proposed RFC for Primary Constructors in PHP. The RFC proposes a new syntax allowing class properties and...","image":"https://media.daily.dev/image/upload/s--HRgLpUt6--/f_auto/v1722860399/public/Placeholder%2003","thumbnailUrl":"https://media.daily.dev/image/upload/s--HRgLpUt6--/f_auto/v1722860399/public/Placeholder%2003","isAccessibleForFree":true,"articleSection":"externals.io","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"externals.io","logo":"https://media.daily.dev/image/upload/s--9i0zxASK--/f_auto,q_auto/v1780213616/logos/externals?_a=BAMAMiWQ0","url":"https://daily.dev/sources/externals"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/rfc-primary-constructors-bry3feedh","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"php,language-design","timeRequired":"PT19M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"externals.io","item":"https://daily.dev/sources/externals"},{"@type":"ListItem","position":3,"name":"[RFC] Primary Constructors"}]}
```

