This constructor takes a large number of options, most of which
were effectively undocumented, leading to a very high volume of
User Notes. Some examples and caveats from these notes have been
incorporated.
The descriptions here are largely based on reverse-engineering
the source code (which isn't particularly well commented) and
experimenting locally, so may not be 100% accurate, or capture
differences between versions.
* Use spaceship where appropriate.
* Add example of multi-axes sorting with spaceship.
* Don't acknowledge the existence of PHP < 7
Co-authored-by: George Peter Banyard <girgias@php.net>
* Minor updates
Co-authored-by: Christoph M. Becker <cmbecker69@gmx.de>
Co-authored-by: George Peter Banyard <girgias@php.net>
Co-authored-by: Christoph M. Becker <cmbecker69@gmx.de>
* Note that shutdown functions may still register shutdown functions.
* Add note about max execution time.
* Add cross reference to fastcgi_finish_request.
* Correct grammar.
Basically the only reason people should be looking at the manual
for create_function right now is to see how *not* to use it. So,
for every example that was already included, I've added the
corresponding version using real anonymous functions.
Also, I've reworded the purpose and description, because these
functions aren't anonymous, as evidenced by the return value being
their name.
Closes GH-1500.
- UPGRADING says that the error_reporting (ie. value returned by error_reporting() or ini_get('error_reporting ')) is changed, not the severity value passed to the handler.
- UPGRADING says that the error_reporting() == 0 should be replaced with !(error_reporting() & $err_no) in code, not the return with return false. So there is currenctly no way how to detect @ operator.
- "Prior to PHP 8.0.0, the value of the severity passed to the custom error handler was always 0" - no true
- "return false; // Silenced" - not true, if the function returns false then the normal error handler continues, so it is not "silenced".
(partially reverts "Cleanup and update docs related to @ operator" commit 12b1d4704ea448b55ec155619be1e50c0e67e9f9.)
Co-authored-by: George Peter Banyard <girgias@php.net>
Co-authored-by: Larry Garfield <larry@garfieldtech.com>
The first change mentioned in the manual for PDO::MYSQL_ATTR_LOCAL_INFILE_DIRECTORY was 03f0ebc60c.
Then 607ec1f63c stated about the version to which the constant was added.
However, it incorrectly appends to `MYSQL_ATTR_LOCAL_INFILE` instead of `MYSQL_ATTR_LOCAL_INFILE_DIRECTORY`.
Closes GH-1502.
- Move utf8_encode and utf8_decode into the strings chapter, since
they were moved out of the XML extension in 7.2
- Recommend mb_convert_encoding, iconv, and UConverter::transcode
when mentioning encoding in passing
- Document UConverter::transcode, based on examination of source
and upstream ICU docs
- Make the language used more consistent, e.g. "convert" rather
than "encode"/"decode", "encoding" rather than "charset"
Closes GH-1418.
Foreign Function Interface (FFI) has been introduced in 2019 (PHP 7.4) and the API didn't change since then, it should probably be considered safe to use it.
Closes GH-1495. Closes GH-1499.
`DOMNamedNodeMap::removeNamedItem` is listed twice and I suspect the one after `DOMNamedNodeMap::setNamedItemNS` was meant to be `DOMNamedNodeMap::removeNamedItemNS` instead.
Closes GH-1491.