You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- The user manual is at https://php-library-template.readthedocs.io/ ([sources](https://github.com/chillerlan/php-library-template/tree/main/docs))
52
-
- An API documentation created with [phpDocumentor](https://www.phpdoc.org/) can be found at https://chillerlan.github.io/php-library-template/
44
+
The documentation of the PSR-7 interfaces can be found over at https://www.php-fig.org/psr/psr-7/.
45
+
46
+
**NOTE: This library has abandoned the paranoid "value object" "immuatbility" that is dictated by PSR-7 for it is horseshit.
47
+
The pseudo-immutability gets in the way more often (always) than it is useful (never) and creates endless overhead.
48
+
If you want your objects to be immutable for whatever reason, just fucking clone them and don't force countless libraries
49
+
to do that for you instead. If you don't like it, just use Guzzle instead (spoiler: you won't notice the difference).**
50
+
51
+
Further, this library still only implements [`psr/http-message`](https://packagist.org/packages/psr/http-message) v1.1,
52
+
as the v2.0 release (06/2023) has return types added [that conflict](https://github.com/php-fig/http-message/pull/107)
53
+
with the [`static` return type](https://wiki.php.net/rfc/static_return_type) that was introduced in PHP 8 (11/2020).
54
+
55
+
56
+
### Auto generated API documentation
57
+
58
+
The API documentation can be auto generated with [phpDocumentor](https://www.phpdoc.org/).
59
+
There is an [online version available](https://chillerlan.github.io/psr-7/) via the [gh-pages branch](https://github.com/chillerlan/psr-7/tree/gh-pages) that is [automatically deployed](https://github.com/chillerlan/psr-7/deployments) on each push to main.
60
+
61
+
Locally created docs will appear in `.build/phpdocs/`. If you'd like to create local docs, please follow these steps:
62
+
63
+
-[download phpDocumentor](https://github.com/phpDocumentor/phpDocumentor/releases) v3+ as .phar archive
64
+
- run it in the repository root directory:
65
+
- on Windows `c:\path\to\php.exe c:\path\to\phpDocumentor.phar --config=phpdoc.xml`
66
+
- on Linux just `php /path/to/phpDocumentor.phar --config=phpdoc.xml`
67
+
- open [index.html](./.build/phpdocs/index.html) in a browser
0 commit comments