-
-
Notifications
You must be signed in to change notification settings - Fork 9.7k
Closed as not planned
Labels
RFCRFC = Request For Comments (proposals about features that you want to be discussed)RFC = Request For Comments (proposals about features that you want to be discussed)
Description
Description
As this issue begin to grind my gears, and because API-Platform with the Symfony's support heavily uses REST architecture, I would like to propose a RFC to PHP.
@nicolas-grekas or @dunglas do you have, in few seconds (I don't want to bother you), resources about the whole topic? Anything besides the below resources should be known to begin? What about the PHP side?
Should this be an issue or a discussion?
Resources
- Last issue at Symfony's with discussion
- Previous abandoned PHP RFC with discussion
- HTTP/1.1 original 7231 RFC
- HTTP/1.1 update's 9110 RFC
- Multipart/form-data 2388 RFC
- $_REQUEST PHP doc
- $_POST PHP doc
- Actual "PUT method support" on PHP doc
- Actual "POST method uploads" on PHP doc
- "HTTP message interface" FIG's PSR-7
Example
The discussion around the previous abandoned RFC shows few interesting directions. Few questions:
- New superglobals $_GET, $_POST --> $_PUT, $_PATCH, .. ?
- What about $_FOO if a non-standard verb is used?
- What about disengaging PHP from those $_VERBS to have something more universal?
- The files should be found in $_FILES, regardless of the actual request method?
- What about an OOP API for the request? Or an interface?
- What about an enum for standardized verbs?
- Should PHP be agnostic about the HTTP standard (having a file with a GET request, accepting any Content-Type and any verb, ...) or should it allows/disallows requests in place of the web server/userland?
- Other ideas?
Those are ideas around the topic, and can be distributed into multiple RFC's. For now, sky is the limit.
Note: I can't implement as I don't know C. 😢
Metadata
Metadata
Assignees
Labels
RFCRFC = Request For Comments (proposals about features that you want to be discussed)RFC = Request For Comments (proposals about features that you want to be discussed)