downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | conferences | my php.net

search for in the

What is PHP?

PHP is a widely-used general-purpose scripting language that is especially suited for Web development and can be embedded into HTML. If you are new to PHP and want to get some idea of how it works, try the introductory tutorial. After that, check out the online manual.

Ever wondered how popular PHP is? See the Netcraft Survey.

Thanks To

Related sites

Community

Syndication

You can grab our news as an Atom feed.

Upcoming Events [add]

August

Conferences

06. PHP with YII Training Event
11. CodeIgniter Conference SF
17. PHPMS Conf 2012
17. PHP Congress México 2012
18. 2do Congreso de PHP en México
30. CakeFest 2012 CakePHP Conference

User Group Events

03. Köln/Bonn
03. Iran PHP developer's meetup
05. PHP meeting online in China
05. meeting de LAMPistas en La Paz
06. PHP Online User Group
07. SW Florida Linux Users Group
07. PDXPHP monthly meeting
07. Jacksonville User Group
07. Berlin PHP Usergroup Meeting
07. PHPNW: PHP North West user group
08. PHP User Group Stuttgart
08. South Florida PHP Users Group
08. PHP South West User Group
08. PHPSW, UK
08. DC PHP Developer's Community
08. VenturaPHP Developers Meetup
09. Meeting usergroup Dortmund
09. PHP Usergroup Frankfurt/Main
09. Metro Jersey PHP Usergroup
09. Seattle PHP Meetup/Users Group
11. PHP User Group Nanaimo, BC/CA
11. PEA meeting from phpchina
11. Nagpur PHP Meetup
11. Nezahualcoyotl PHP Ramptors
12. Los Angeles PHP Developers Group
13. Queen City (Charlotte) PHP
14. Hamburg
14. Dallas PHP/MySQL Users Group
14. Dallas PHP Users Group (DPUG)
14. Austin PHP Meetup
14. OKC PHP Meetup
14. Nashville PHP User Group
14. Oklahoma City PHP User Group
14. Buffalo PHP Meetup
15. Miami PHP User Group
15. Broward Php Usergroup
15. Chicago PHP User Group Brunch
15. Baltimore PHP User Group
16. TriPUG
16. OINK-PUG (Cincinnati, Ohio)
16. Utah PHP Users Group Meeting
16. Denver - FRPUG
16. San Diego PHP
16. B/CS PHP User Group
16. AmsterdamPHP Meetup
18. Miami Linux Users Group
18. Twin Cities PHP
18. Los Angeles LAMPsig
18. Kansas City
21. PHP Brisbane Meetup Group
21. Nashville Enterprise LAMP UG
21. Chattanooga PHP Developers
21. PHP North-East User Group
21. NWO-PUG User Group Meeting
21. CHOPUG
21. Lake / Kenosha PHP User Group
22. Edinburgh PHP Users Group
23. Memphis PHP
23. PHP Usergroup D/DU/KR
25. Miami Linux Meetup
25. PHP RIO Meetup
25. PHP User Group Hong Kong
27. Long Island PHP Users Group
27. Tampa Bay Florida PHP
27. Winnipeg PHP
28. New York
28. AzPHP
28. Malaysia PHP Meetup
28. PHP Usergroup Karlsruhe
28. PHPUG Wuerzburg
28. DCPHP Beverage Subgroup
28. Brisbane PHP User Group
28. PHP User Group Roma
28. PHPUBSP
29. Irish PHP Users Group meeting
29. Guelph PHP Users Group
29. Louisville PHP User Group
30. Arabic PHP Group Meeting
30. Malaysia PHP User Group Meet Up

Training

03. ZEND: PHPI: Foundations On-line
03. PHP Programming - Edinburgh UK
03. ZEND: Framework: Fundamentals
04. PHP & AJAX -Construindo Websites
04. Core and Advanced PHP Workshop
05. Ahmedabad PHP Group Training
05. php training
06. MySQL Spain
06. Curso PHP Madrid
06. PHP E-Learning/Germany
06. Curso on-line ActionScript / PHP
06. PHP & MySQL Training in Kassel
06. PHP & MySQL com Dreamweaver MX
06. Curso on-line de PHP
06. PHP & MYSQL-Construindo WebSites
06. PHP Training Heilbronn
06. Basic PHP Course
06. ZEND: PHPII: Higher Structures
07. Curso on-line de PHP-MySQL
07. PHP Class at CalTek
08. UK Object Orientation Workshop
08. 2nd Wednesdays PHP Workshop
08. Understanding Regular Expression
09. UK Smarty Templating Workshop
13. PHP para Expertos Curso on-line
13. Curso PHP y MySQL
13. ZEND: Test Prep: PHP 5.3 Cert
13. ZEND: PHP for OO/Procedural Prog
15. 3rd Wednesdays PHP Seminary
16. Chennai PHP Training
20. PHP & MySQL Training / Gießen
20. PHP Intro Course South Africa
20. SQLite Datenbanken mit PHP erste
20. ZEND: Framework: Advanced
21. Cursos de PHP en Bilbao
21. ZEND: PHP Security On-line
23. PHP Brasil - Training
27. PHP Course Johannesburg
28. UK PHP Training
31. PHP Training

PHP 5.4.5 and PHP 5.3.15 released!

19-Jul-2012

The PHP development team would like to announce the immediate availability of PHP 5.4.5 and PHP 5.3.15. This release fixes over 30 bugs and includes a fix for a security related overflow issue in the stream implementation. All users of PHP are encouraged to upgrade to PHP 5.4.5 or PHP 5.3.15.

For source downloads of PHP 5.4.5 and PHP 5.3.15 please visit our downloads page, Windows binaries can be found on windows.php.net/download/. The list of changes are recorded in the ChangeLog.

PHP 5.4.4 and PHP 5.3.14 released!

14-Jun-2012

The PHP development team would like to announce the immediate availability of PHP 5.4.4 and PHP 5.3.14. All users of PHP are encouraged to upgrade to PHP 5.4.4 or PHP 5.3.14.

The release fixes multiple security issues: A weakness in the DES implementation of crypt and a heap overflow issue in the phar extension

PHP 5.4.4 and PHP 5.3.14 fixes over 30 bugs. Please note that the use of php://fd streams is now restricted to the CLI SAPI

For source downloads of PHP 5.4.4 and PHP 5.3.14 please visit our downloads page, Windows binaries can be found on windows.php.net/download/. The list of changes are recorded in the ChangeLog.

PHP 5.4.3 and PHP 5.3.13 Released!

08-May-2012

The PHP development team would like to announce the immediate availability of PHP 5.4.3 and PHP 5.3.13. All users are encouraged to upgrade to PHP 5.4.3 or PHP 5.3.13

The releases complete a fix for a vulnerability in CGI-based setups (CVE-2012-2311). Note: mod_php and php-fpm are not vulnerable to this attack.

PHP 5.4.3 fixes a buffer overflow vulnerability in the apache_request_headers() (CVE-2012-2329). The PHP 5.3 series is not vulnerable to this issue.

For source downloads of PHP 5.4.3 and PHP 5.3.13 please visit our downloads page, Windows binaries can be found on windows.php.net/download/. The list of changes are recorded in the ChangeLog.

PHP 5.3.12 and 5.4.2 and the CGI flaw (CVE-2012-1823)

06-May-2012

PHP 5.3.12/5.4.2 do not fix all variations of the CGI issues described in CVE-2012-1823. It has also come to our attention that some sites use an insecure cgiwrapper script to run PHP. These scripts will use $* instead of "$@" to pass parameters to php-cgi which causes a number of issues. Again, people using mod_php or php-fpm are not affected.

One way to address these CGI issues is to reject the request if the query string contains a '-' and no '='. It can be done using Apache's mod_rewrite like this:

    RewriteCond %{QUERY_STRING} ^[^=]*$
    RewriteCond %{QUERY_STRING} %2d|\- [NC]
    RewriteRule .? - [F,L]
    
Note that this will block otherwise safe requests like ?top-40 so if you have query parameters that look like that, adjust your regex accordingly.

Another set of releases are planned for Tuesday, May, 8th. These releases will fix the CGI flaw and another CGI-related issue in apache_request_header (5.4 only).

We apologize for the inconvenience created with these releases and the (lack of) communication around them.

PHP 5.3.12 and PHP 5.4.2 Released!

03-May-2012

There is a vulnerability in certain CGI-based setups (Apache+mod_php and nginx+php-fpm are not affected) that has gone unnoticed for at least 8 years. Section 7 of the CGI spec states:

Some systems support a method for supplying a [sic] array of strings to the CGI script. This is only used in the case of an `indexed' query. This is identified by a "GET" or "HEAD" HTTP request with a URL search string not containing any unencoded "=" characters.

So, requests that do not have a "=" in the query string are treated differently from those who do in some CGI implementations. For PHP this means that a request containing ?-s may dump the PHP source code for the page, but a request that has ?-s&=1 is fine.

A large number of sites run PHP as either an Apache module through mod_php or using php-fpm under nginx. Neither of these setups are vulnerable to this. Straight shebang-style CGI also does not appear to be vulnerable.

If you are using Apache mod_cgi to run PHP you may be vulnerable. To see if you are, just add ?-s to the end of any of your URLs. If you see your source code, you are vulnerable. If your site renders normally, you are not.

To fix this, update to PHP 5.3.12 or PHP 5.4.2.

We recognize that since CGI is a rather outdated way to run PHP, it may not be feasible to upgrade these sites to a modern version of PHP. An alternative is to configure your web server to not let these types of requests with query strings starting with a "-" and not containing a "=" through. Adding a rule like this should not break any sites. For Apache using mod_rewrite it would look like this:

         RewriteCond %{QUERY_STRING} ^(%2d|-)[^=]+$ [NC]
         RewriteRule ^(.*) $1? [L]
     

If you are writing your own rule, be sure to take the urlencoded ?%2ds version into account.

Making a bad week worse, we had a bug in our bug system that toggled the private flag of a bug report to public on a comment to the bug report causing this issue to go public before we had time to test solutions to the level we would like. Please report any issues via bugs.php.net.

For source downloads of PHP 5.3.12 and PHP 5.4.2 please visit our downloads page, Windows binaries can be found on windows.php.net/download/. A ChangeLog exists.

News Archive

 
Atom | show source | credits | stats | sitemap | contact | advertising | mirror sites