Update php.net links to point to https://www.php.net

This commit is contained in:
Peter Kokot
2023-01-17 23:57:25 +01:00
parent ec2634cffa
commit 5638836ec8
27 changed files with 90 additions and 91 deletions

View File

@@ -116,4 +116,4 @@ All content is completely free now, and always will be.
3. Wrap all text to 120 characters
4. Code samples should adhere to PSR-1 or higher
5. Use [GitHub Flavored Markdown](https://github.github.com/gfm/) for all content
6. Use language agnostic urls when referring to external websites such as the [php.net](http://php.net/urlhowto.php) manual
6. Use language agnostic urls when referring to external websites such as the [php.net](https://www.php.net/urlhowto.php) manual

View File

@@ -8,10 +8,11 @@ anchor: use_the_current_stable_version
If you are getting started with PHP, start with the current stable release of [PHP 8.2][php-release]. PHP 8.x adds many [new features](#language_highlights) over the older 7.x and 5.x versions. The engine has been largely re-written, and PHP is now even quicker than older versions. PHP 8 is a major update of the language and contains many new features and optimizations.
You should try to upgrade to the latest stable version quickly - PHP 7.4 [is already End of Life](http://php.net/supported-versions.php). Upgrading is easy, as there are not many backwards compatibility breaks [PHP 8.0][php-bc-80], [PHP 8.1][php-bc-81], [PHP 8.2][php-bc-82]. If you are not sure which version a function or feature is in, you can check the PHP documentation on the [php.net][php-docs] website.
You should try to upgrade to the latest stable version quickly - PHP 7.4 [is already End of Life][php-supported]. Upgrading is easy, as there are not many backwards compatibility breaks [PHP 8.0][php-bc-80], [PHP 8.1][php-bc-81], [PHP 8.2][php-bc-82]. If you are not sure which version a function or feature is in, you can check the PHP documentation on the [php.net][php-docs] website.
[php-release]: https://php.net/downloads.php
[php-docs]: https://php.net/manual/
[php-bc-80]: https://php.net/manual/migration80.incompatible.php
[php-bc-81]: https://php.net/manual/migration81.incompatible.php
[php-bc-82]: https://php.net/manual/migration82.incompatible.php
[php-release]: https://www.php.net/downloads.php
[php-supported]: https://www.php.net/supported-versions.php
[php-docs]: https://www.php.net/manual/
[php-bc-80]: https://www.php.net/manual/migration80.incompatible.php
[php-bc-81]: https://www.php.net/manual/migration81.incompatible.php
[php-bc-82]: https://www.php.net/manual/migration82.incompatible.php

View File

@@ -16,4 +16,4 @@ To start the server, run the following command from your terminal in your projec
* [Learn about the built-in, command line web server][cli-server]
[cli-server]: http://php.net/features.commandline.webserver
[cli-server]: https://www.php.net/features.commandline.webserver

View File

@@ -76,7 +76,7 @@ you and tie them all together, but ease of setup comes with a trade-off of flexi
[MacPorts]: https://www.macports.org/install.php
[phpbrew]: https://github.com/phpbrew/phpbrew
[php-osx.liip.ch]: https://web.archive.org/web/20220505163210/https://php-osx.liip.ch/
[mac-compile]: https://secure.php.net/install.macosx.compile
[mac-compile]: https://www.php.net/install.macosx.compile
[xcode-gcc-substitution]: https://github.com/kennethreitz/osx-gcc-installer
["Command Line Tools for XCode"]: https://developer.apple.com/downloads
[apache]: https://httpd.apache.org/

View File

@@ -50,14 +50,13 @@ available as `__call()` and `__callStatic()`.
* [Read about Overloading][overloading]
[oop]: https://secure.php.net/language.oop5
[traits]: https://secure.php.net/language.oop5.traits
[anonymous-functions]: https://secure.php.net/functions.anonymous
[closure-class]: https://secure.php.net/class.closure
[oop]: https://www.php.net/language.oop5
[traits]: https://www.php.net/language.oop5.traits
[anonymous-functions]: https://www.php.net/functions.anonymous
[closure-class]: https://www.php.net/class.closure
[closures-rfc]: https://wiki.php.net/rfc/closures
[callables]: https://secure.php.net/language.types.callable
[call-user-func-array]: https://secure.php.net/function.call-user-func-array
[magic-methods]: https://secure.php.net/language.oop5.magic
[reflection]: https://secure.php.net/intro.reflection
[overloading]: https://secure.php.net/language.oop5.overloading
[callables]: https://www.php.net/language.types.callable
[call-user-func-array]: https://www.php.net/function.call-user-func-array
[magic-methods]: https://www.php.net/language.oop5.magic
[reflection]: https://www.php.net/intro.reflection
[overloading]: https://www.php.net/language.oop5.overloading

View File

@@ -28,6 +28,6 @@ If you're going to use an autoloader standard for a new application or package,
* [Read about PSR-4][psr4]
[namespaces]: https://secure.php.net/language.namespaces
[namespaces]: https://www.php.net/language.namespaces
[psr0]: https://www.php-fig.org/psr/psr-0/
[psr4]: https://www.php-fig.org/psr/psr-4/

View File

@@ -14,5 +14,5 @@ over these datastructures or your own classes which implement SPL interfaces.
* [SPL video course on LinkedIn.com (paid)][linkedin]
[spl]: https://secure.php.net/book.spl
[spl]: https://www.php.net/book.spl
[linkedin]: https://www.linkedin.com/learning/learning-the-standard-php-library?trk=lynda_redirect_learning

View File

@@ -53,9 +53,9 @@ Hello, world
* [Learn about running PHP from the command line][php-cli]
[phpinfo]: https://secure.php.net/function.phpinfo
[cli-options]: https://secure.php.net/features.commandline.options
[argc]: https://secure.php.net/reserved.variables.argc
[argv]: https://secure.php.net/reserved.variables.argv
[phpinfo]: https://www.php.net/function.phpinfo
[cli-options]: https://www.php.net/features.commandline.options
[argc]: https://www.php.net/reserved.variables.argc
[argv]: https://www.php.net/reserved.variables.argv
[exit-codes]: https://www.gsp.com/cgi-bin/man.cgi?section=3&topic=sysexits
[php-cli]: https://secure.php.net/features.commandline.options
[php-cli]: https://www.php.net/manual/en/features.commandline.php

View File

@@ -65,5 +65,5 @@ A popular PHP API extension is [Carbon](https://carbon.nesbot.com/). It inherits
* [Read about DateTime][datetime]
* [Read about date formatting][dateformat] (accepted date format string options)
[datetime]: https://secure.php.net/book.datetime
[dateformat]: https://secure.php.net/function.date
[datetime]: https://www.php.net/book.datetime
[dateformat]: https://www.php.net/function.date

View File

@@ -44,7 +44,7 @@ Finally, If you are building a distributed application and cannot be certain tha
enabled, then consider using the [symfony/polyfill-mbstring] Composer package. This will use `mbstring` if it is available, and
fall back to non UTF-8 functions if not.
[Multibyte String Extension]: https://secure.php.net/book.mbstring
[Multibyte String Extension]: https://www.php.net/book.mbstring
[symfony/polyfill-mbstring]: https://packagist.org/packages/symfony/polyfill-mbstring
### UTF-8 at the Database level
@@ -146,19 +146,19 @@ header('Content-Type: text/html; charset=UTF-8'); // Unnecessary if your default
### Further reading
* [PHP Manual: String Operations](https://secure.php.net/language.operators.string)
* [PHP Manual: String Functions](https://secure.php.net/ref.strings)
* [`strpos()`](https://secure.php.net/function.strpos)
* [`strlen()`](https://secure.php.net/function.strlen)
* [`substr()`](https://secure.php.net/function.substr)
* [PHP Manual: Multibyte String Functions](https://secure.php.net/ref.mbstring)
* [`mb_strpos()`](https://secure.php.net/function.mb-strpos)
* [`mb_strlen()`](https://secure.php.net/function.mb-strlen)
* [`mb_substr()`](https://secure.php.net/function.mb-substr)
* [`mb_internal_encoding()`](https://secure.php.net/function.mb-internal-encoding)
* [`mb_http_output()`](https://secure.php.net/function.mb-http-output)
* [`htmlentities()`](https://secure.php.net/function.htmlentities)
* [`htmlspecialchars()`](https://secure.php.net/function.htmlspecialchars)
* [PHP Manual: String Operations](https://www.php.net/language.operators.string)
* [PHP Manual: String Functions](https://www.php.net/ref.strings)
* [`strpos()`](https://www.php.net/function.strpos)
* [`strlen()`](https://www.php.net/function.strlen)
* [`substr()`](https://www.php.net/function.substr)
* [PHP Manual: Multibyte String Functions](https://www.php.net/ref.mbstring)
* [`mb_strpos()`](https://www.php.net/function.mb-strpos)
* [`mb_strlen()`](https://www.php.net/function.mb-strlen)
* [`mb_substr()`](https://www.php.net/function.mb-substr)
* [`mb_internal_encoding()`](https://www.php.net/function.mb-internal-encoding)
* [`mb_http_output()`](https://www.php.net/function.mb-http-output)
* [`htmlentities()`](https://www.php.net/function.htmlentities)
* [`htmlspecialchars()`](https://www.php.net/function.htmlspecialchars)
* [Stack Overflow: What factors make PHP Unicode-incompatible?](https://stackoverflow.com/questions/571694/what-factors-make-php-unicode-incompatible)
* [Stack Overflow: Best practices in PHP and MySQL with international strings](https://stackoverflow.com/questions/140728/best-practices-in-php-and-mysql-with-international-strings)
* [How to support full Unicode in MySQL databases](https://mathiasbynens.be/notes/mysql-utf8mb4)

View File

@@ -396,7 +396,7 @@ After including those new rules in the `.po` file, a new scan will bring in your
* [Wikipedia: i18n and l10n](https://en.wikipedia.org/wiki/Internationalization_and_localization)
* [Wikipedia: Gettext](https://en.wikipedia.org/wiki/Gettext)
* [LingoHub: PHP internationalization with gettext tutorial][lingohub]
* [PHP Manual: Gettext](https://secure.php.net/manual/book.gettext.php)
* [PHP Manual: Gettext](https://www.php.net/manual/book.gettext.php)
* [Gettext Manual][manual]
[Poedit]: https://poedit.net
@@ -416,12 +416,12 @@ After including those new rules in the `.po` file, a new scan will bring in your
[laminas]: https://docs.laminas.dev/laminas-i18n/
[laravel]: https://laravel.com/docs/master/localization
[yii]: https://www.yiiframework.com/doc/guide/2.0/en/tutorial-i18n
[intl]: https://secure.php.net/manual/intro.intl.php
[intl]: https://www.php.net/manual/intro.intl.php
[ICU project]: https://icu.unicode.org/
[symfony-keys]: https://symfony.com/doc/current/translation.html#using-real-or-keyword-messages
[sprintf]: https://secure.php.net/manual/function.sprintf.php
[func]: https://secure.php.net/manual/function.gettext.php
[n_func]: https://secure.php.net/manual/function.ngettext.php
[d_func]: https://secure.php.net/manual/function.dgettext.php
[dn_func]: https://secure.php.net/manual/function.dngettext.php
[sprintf]: https://www.php.net/manual/function.sprintf.php
[func]: https://www.php.net/manual/function.gettext.php
[n_func]: https://www.php.net/manual/function.ngettext.php
[d_func]: https://www.php.net/manual/function.dgettext.php
[dn_func]: https://www.php.net/manual/function.dngettext.php

View File

@@ -14,6 +14,6 @@ MySQL and a little bit of MSSQL, or you need to connect to an Oracle database, t
same drivers. You'll need to learn a brand new API for each database — and that can get silly.
[mysqli]: https://secure.php.net/mysqli
[pgsql]: https://secure.php.net/pgsql
[mssql]: https://secure.php.net/mssql
[mysqli]: https://www.php.net/mysqli
[pgsql]: https://www.php.net/pgsql
[mssql]: https://www.php.net/mssql

View File

@@ -27,10 +27,10 @@ your applications within your own development schedules so you won't be rushed l
* [MySQLi Prepared Statements][mysqli_prepared_statements]
* [PHP: Choosing an API for MySQL][mysql_api]
[mysql]: https://secure.php.net/mysqli
[mysql_deprecated]: https://secure.php.net/migration55.deprecated
[mysql_removed]: https://secure.php.net/manual/migration70.removed-exts-sapis.php
[mysqli]: https://secure.php.net/mysqli
[pdo]: https://secure.php.net/pdo
[mysql_api]: https://secure.php.net/mysqlinfo.api.choosing
[mysql]: https://www.php.net/mysqli
[mysql_deprecated]: https://www.php.net/migration55.deprecated
[mysql_removed]: https://www.php.net/manual/migration70.removed-exts-sapis.php
[mysqli]: https://www.php.net/mysqli
[pdo]: https://www.php.net/pdo
[mysql_api]: https://www.php.net/mysqlinfo.api.choosing
[mysqli_prepared_statements]: https://websitebeaver.com/prepared-statements-in-php-mysqli-to-prevent-sql-injection

View File

@@ -60,7 +60,7 @@ introduced to the database preventing potential SQL injection attacks.
For writes, such as INSERT or UPDATE, it's especially critical to still [filter your data](#data_filtering) first and sanitize it for other things (removal of HTML tags, JavaScript, etc). PDO will only sanitize it for SQL, not for your application.
* [Learn about PDO]
* [Learn about PDO][pdo]
You should also be aware that database connections use up resources and it was not unheard-of to have resources
exhausted if connections were not implicitly closed, however this was more common in other languages. Using PDO you can
@@ -71,7 +71,6 @@ unless of course you are using persistent connections.
* [Learn about PDO connections]
[pdo]: https://secure.php.net/pdo
[pdo]: https://www.php.net/pdo
[SQL Injection]: https://web.archive.org/web/20210413233627/http://wiki.hashphp.org/Validation
[Learn about PDO]: https://secure.php.net/book.pdo
[Learn about PDO connections]: https://secure.php.net/pdo.connections
[Learn about PDO connections]: https://www.php.net/pdo.connections

View File

@@ -23,7 +23,7 @@ installed in any application you like:
* [Zend-db][4]
[1]: https://secure.php.net/book.pdo
[1]: https://www.php.net/book.pdo
[2]: https://www.doctrine-project.org/projects/dbal.html
[4]: https://packages.zendframework.com/docs/latest/manual/en/index.html#zendframework/zend-db
[5]: https://atlasphp.io

View File

@@ -146,9 +146,9 @@ More information on this and details on how to use `ErrorException` with error h
[errorreport]: /#error_reporting
[Xdebug]: https://xdebug.org/docs/basic
[Error Control Operators]: https://secure.php.net/language.operators.errorcontrol
[Error Control Operators]: https://www.php.net/language.operators.errorcontrol
[SitePoint]: https://www.sitepoint.com/
[Whoops!]: https://filp.github.io/whoops/
[errorexception]: https://secure.php.net/class.errorexception
[Predefined Constants for Error Handling]: https://secure.php.net/errorfunc.constants
[error_reporting]: https://secure.php.net/function.error-reporting
[errorexception]: https://www.php.net/class.errorexception
[Predefined Constants for Error Handling]: https://www.php.net/errorfunc.constants
[error_reporting]: https://www.php.net/function.error-reporting

View File

@@ -70,6 +70,6 @@ standard Exception which is vague, or creating a custom Exception just for that,
[splext]: /#standard_php_library
[exceptions]: https://secure.php.net/language.exceptions
[splexe]: https://secure.php.net/spl.exceptions
[exceptions]: https://www.php.net/language.exceptions
[splexe]: https://www.php.net/spl.exceptions
[nesting-exceptions-in-php]: https://www.brandonsavage.net/exceptional-php-nesting-exceptions-in-php/

View File

@@ -65,7 +65,7 @@ if (password_verify('bad-password', $passwordHash)) {
* [PHP `password_hash()` RFC] [4]
[1]: https://secure.php.net/function.password-hash
[1]: https://www.php.net/function.password-hash
[2]: https://github.com/ircmaxell/password_compat
[3]: https://wikipedia.org/wiki/Cryptographic_hash_function
[4]: https://wiki.php.net/rfc/password_hash

View File

@@ -62,11 +62,11 @@ phone number, or age when processing a registration submission.
[See Validation Filters][3]
[1]: https://secure.php.net/book.filter
[2]: https://secure.php.net/filter.filters.sanitize
[3]: https://secure.php.net/filter.filters.validate
[4]: https://secure.php.net/function.filter-var
[5]: https://secure.php.net/function.filter-input
[6]: https://secure.php.net/security.filesystem.nullbytes
[1]: https://www.php.net/book.filter
[2]: https://www.php.net/filter.filters.sanitize
[3]: https://www.php.net/filter.filters.validate
[4]: https://www.php.net/function.filter-var
[5]: https://www.php.net/function.filter-input
[6]: https://www.php.net/security.filesystem.nullbytes
[html-purifier]: http://htmlpurifier.org/
[unserialize]: https://secure.php.net/manual/function.unserialize.php
[unserialize]: https://www.php.net/manual/function.unserialize.php

View File

@@ -23,7 +23,7 @@ log_errors = On
> Passing in the value `-1` will show every possible error, even when new levels and constants are added in future PHP
> versions. The `E_ALL` constant also behaves this way as of PHP 5.4. -
> [php.net](https://secure.php.net/function.error-reporting)
> [php.net](https://www.php.net/function.error-reporting)
The `E_STRICT` error level constant was introduced in 5.3.0 and is not part of `E_ALL`, however it became part of
`E_ALL` in 5.4.0. What does this mean? In terms of reporting every possible error in version 5.3 it means you must
@@ -49,7 +49,7 @@ log_errors = On
With these settings in production, errors will still be logged to the error logs for the web server, but will not be
shown to the user. For more information on these settings, see the PHP manual:
* [error_reporting](https://secure.php.net/errorfunc.configuration#ini.error-reporting)
* [display_errors](https://secure.php.net/errorfunc.configuration#ini.display-errors)
* [display_startup_errors](https://secure.php.net/errorfunc.configuration#ini.display-startup-errors)
* [log_errors](https://secure.php.net/errorfunc.configuration#ini.log-errors)
* [error_reporting](https://www.php.net/errorfunc.configuration#ini.error-reporting)
* [display_errors](https://www.php.net/errorfunc.configuration#ini.display-errors)
* [display_startup_errors](https://www.php.net/errorfunc.configuration#ini.display-startup-errors)
* [log_errors](https://www.php.net/errorfunc.configuration#ini.log-errors)

View File

@@ -46,7 +46,7 @@ If you are running Apache 2.4 or later, you can use [mod_proxy_fcgi] to get grea
[nginx]: https://nginx.org/
[phpfpm]: https://secure.php.net/install.fpm
[phpfpm]: https://www.php.net/install.fpm
[secure-nginx-phpfpm]: https://nealpoole.com/blog/2011/04/setting-up-php-fastcgi-and-nginx-dont-trust-the-tutorials-check-your-configuration/
[apache-modules]: https://httpd.apache.org/docs/2.4/mod/
[prefork MPM]: https://httpd.apache.org/docs/2.4/mod/prefork.html

View File

@@ -9,7 +9,7 @@ When a PHP file is executed, it must first be compiled into [opcodes](https://ph
An opcode cache prevents redundant compilation by storing opcodes in memory and reusing them on successive calls. It will typically check signature or modification time of the file first, in case there have been any changes.
It's likely an opcode cache will make a significant speed improvement to your application. Since PHP 5.5 there is one built in - [Zend OPcache][opcache-book]. Depending on your PHP package/distribution, it's usually turned on by default - check [opcache.enable](https://secure.php.net/manual/opcache.configuration.php#ini.opcache.enable) and the output of `phpinfo()` to make sure. For earlier versions there's a PECL extension.
It's likely an opcode cache will make a significant speed improvement to your application. Since PHP 5.5 there is one built in - [Zend OPcache][opcache-book]. Depending on your PHP package/distribution, it's usually turned on by default - check [opcache.enable](https://www.php.net/manual/opcache.configuration.php#ini.opcache.enable) and the output of `phpinfo()` to make sure. For earlier versions there's a PECL extension.
Read more about opcode caches:
@@ -20,7 +20,7 @@ Read more about opcode caches:
* [PHP Preloading] - PHP >= 7.4
[opcache-book]: https://secure.php.net/book.opcache
[opcache-book]: https://www.php.net/book.opcache
[Zend Optimizer+]: https://github.com/zendtech/ZendOptimizerPlus
[WinCache]: https://www.iis.net/downloads/microsoft/wincache-extension
[PHP_accelerators]: https://wikipedia.org/wiki/List_of_PHP_accelerators

View File

@@ -51,4 +51,4 @@ object cache to PHP 5.5+, since PHP now has a built-in bytecode cache (OPcache).
* [APCu Documentation](https://www.php.net/apcu)
* [Memcached](https://memcached.org/)
* [Redis](https://redis.io/)
* [WinCache Functions](https://secure.php.net/ref.wincache)
* [WinCache Functions](https://www.php.net/ref.wincache)

View File

@@ -6,5 +6,5 @@ anchor: from_the_source
## From the Source {#from_the_source_title}
* [PHP Website](https://secure.php.net/)
* [PHP Documentation](https://secure.php.net/docs.php)
* [PHP Website](https://www.php.net/)
* [PHP Documentation](https://www.php.net/docs.php)

View File

@@ -16,4 +16,4 @@ friends! Other community resources include [StackOverflow][php-so].
[php-irc]: https://webchat.freenode.net/?channels=phpc
[phpc-twitter]: https://twitter.com/phpc
[php-so]: https://stackoverflow.com/questions/tagged/php
[php-calendar]: https://secure.php.net/cal.php
[php-calendar]: https://www.php.net/cal.php

View File

@@ -12,4 +12,4 @@ industry leaders.
[Find a PHP Conference][php-conf]
[php-conf]: https://secure.php.net/conferences/index.php
[php-conf]: https://www.php.net/conferences/index.php

View File

@@ -10,6 +10,6 @@ anchor: elephpants
[Interview with Vincent Pontier][vincent-pontier-interview]
[elephpant]: https://secure.php.net/elephpant.php
[elephpant]: https://www.php.net/elephpant.php
[vincent-pontier-interview]: https://7php.com/elephpant/
[vincent-pontier]: http://www.elroubio.net/