SlideShare a Scribd company logo
PHP 5.5.0
ChangeLog
Dhiraj Pandey
ICS, Noida
Introduction
On 20-June-2013, PHP 5.5.0 rolled out by the
core development team. It consists to some
bug fixes as well as some new features.
Features included
Introduced “Generators” and “Coroutines”
Generators : It provides easy way to implement simple iterators such as
“foreach”. This implementation will save memory. Coroutines will help in
cooperative multitasking.
You can write a code to iterate a set of data without creating an array in
memory, mainly with the help of “yield” keyword.
function getValues() {
yield “iOS";
yield “Android";
yield “BlackBarry";
}
$stuff = getValues();
foreach($stuff as $thing) {
echo $thing . "n";
}
Features included
“finally” keyword is added
Now, a finally block can be written after the try, catch block.
This block will be executed regardless of whether an exception
has been thrown, and before normal execution resumes.
try {
echo ”Try Block” . "n";
} catch (Exception $e) {
echo 'Caught exception: ', $e-
>getMessage(), "n";
} finally {
echo “Finally.n";
}
Features included
A simplified Password hashing API is introduced
 It provides an easy to use wrapper around “crypt()” for
creating and managing passwords.
 No external library is required. No installation is required. No
configuration directives in php.ini
 password_hash and password_verify are the functions to be
used.
Features included
Constant array/string dereferencing
Array and string literals can now be dereferenced directly to
access individual elements and characters
echo [abc, xyz, pqr][0];
// results abc.
echo „DHIRAJ‟[0];
// results D.
Features included
Scalar class name resolution added
 With the help of “::class” keyword, you can get a string containing the fully
qualified name of the Class.
 Particularly useful with namespaced classes.
namespace NS {
class ClassName {
}
echo ClassName::class;
//results NSClassName.
}
Features included
Now empty() can be used on any expression
empty() function can be called on not only variables
but function returns or any other arbitrary
expressions.
Features included
Non-scalar Iterator key support is added
The ability to iterate over an array of arrays and unpack the nested array
into loop variables by providing a ”list()” as the value.
$array = [[1, 2],[3, 4]];
foreach ($array as list($a, $b)) {
echo "A: $a; B: $bn";
}
result: A: 1; B:2
A: 3; B:4
Changes
MySQL extension:
 This extension has been deprecated, so there will be
deprecated warnings on use of this extension. MySQLi
extension can be used in place of that.
 Support for MySQL 5.6+ has been incorporated in various
ways.
Many of the bugs have been fixed in this
version. The complete change log can be
seen on
http://php.net/ChangeLog-5.php
Thank you
Dhiraj Pandey
dhiraj.pandey@iqbsys.com
+91-9910057648
DhirajPandey

More Related Content

What's hot

Refactoring to Macros with Clojure
Refactoring to Macros with ClojureRefactoring to Macros with Clojure
Refactoring to Macros with Clojure
Dmitry Buzdin
 
Poor Man's Functional Programming
Poor Man's Functional ProgrammingPoor Man's Functional Programming
Poor Man's Functional Programming
Dmitry Buzdin
 

What's hot (20)

Introduction to ES6 with Tommy Cresine
Introduction to ES6 with Tommy CresineIntroduction to ES6 with Tommy Cresine
Introduction to ES6 with Tommy Cresine
 
ES6 PPT FOR 2016
ES6 PPT FOR 2016ES6 PPT FOR 2016
ES6 PPT FOR 2016
 
Reactive Access to MongoDB from Scala
Reactive Access to MongoDB from ScalaReactive Access to MongoDB from Scala
Reactive Access to MongoDB from Scala
 
Scalaz By Example (An IO Taster) -- PDXScala Meetup Jan 2014
Scalaz By Example (An IO Taster) -- PDXScala Meetup Jan 2014Scalaz By Example (An IO Taster) -- PDXScala Meetup Jan 2014
Scalaz By Example (An IO Taster) -- PDXScala Meetup Jan 2014
 
Introduction into ES6 JavaScript.
Introduction into ES6 JavaScript.Introduction into ES6 JavaScript.
Introduction into ES6 JavaScript.
 
Java Cheat Sheet
Java Cheat SheetJava Cheat Sheet
Java Cheat Sheet
 
Explaining ES6: JavaScript History and What is to Come
Explaining ES6: JavaScript History and What is to ComeExplaining ES6: JavaScript History and What is to Come
Explaining ES6: JavaScript History and What is to Come
 
An Intro To ES6
An Intro To ES6An Intro To ES6
An Intro To ES6
 
JavaScript ES6
JavaScript ES6JavaScript ES6
JavaScript ES6
 
Codegeneration With Xtend
Codegeneration With XtendCodegeneration With Xtend
Codegeneration With Xtend
 
Programming with Python and PostgreSQL
Programming with Python and PostgreSQLProgramming with Python and PostgreSQL
Programming with Python and PostgreSQL
 
Refactoring to Macros with Clojure
Refactoring to Macros with ClojureRefactoring to Macros with Clojure
Refactoring to Macros with Clojure
 
Quebec pdo
Quebec pdoQuebec pdo
Quebec pdo
 
Javascript
JavascriptJavascript
Javascript
 
What’s new in C# 6
What’s new in C# 6What’s new in C# 6
What’s new in C# 6
 
Stubる - Mockingjayを使ったHTTPクライアントのテスト -
Stubる - Mockingjayを使ったHTTPクライアントのテスト -Stubる - Mockingjayを使ったHTTPクライアントのテスト -
Stubる - Mockingjayを使ったHTTPクライアントのテスト -
 
PostgreSQL and PL/Java
PostgreSQL and PL/JavaPostgreSQL and PL/Java
PostgreSQL and PL/Java
 
Writing a compiler in go
Writing a compiler in goWriting a compiler in go
Writing a compiler in go
 
Poor Man's Functional Programming
Poor Man's Functional ProgrammingPoor Man's Functional Programming
Poor Man's Functional Programming
 
ECMAScript 6
ECMAScript 6ECMAScript 6
ECMAScript 6
 

Viewers also liked

Prem strategy
Prem  strategyPrem  strategy
Prem strategy
Prem Nath
 

Viewers also liked (18)

Tools and Techniques for Faster Development
Tools and Techniques for Faster DevelopmentTools and Techniques for Faster Development
Tools and Techniques for Faster Development
 
Curriculum vitae
Curriculum vitaeCurriculum vitae
Curriculum vitae
 
Prem strategy
Prem  strategyPrem  strategy
Prem strategy
 
Gifting Plants - Putush
Gifting Plants - PutushGifting Plants - Putush
Gifting Plants - Putush
 
All about hummingbird_update - niswey
All about hummingbird_update - nisweyAll about hummingbird_update - niswey
All about hummingbird_update - niswey
 
The most viable way to invest SAS In-memory analytics capabilities
The most viable way to invest SAS In-memory analytics capabilitiesThe most viable way to invest SAS In-memory analytics capabilities
The most viable way to invest SAS In-memory analytics capabilities
 
Barracuda Backup Presentation v6.0
Barracuda Backup Presentation v6.0Barracuda Backup Presentation v6.0
Barracuda Backup Presentation v6.0
 
Verysimple Yoga Part 2 - set of yoga asanas that can be practiced anytime, ai...
Verysimple Yoga Part 2 - set of yoga asanas that can be practiced anytime, ai...Verysimple Yoga Part 2 - set of yoga asanas that can be practiced anytime, ai...
Verysimple Yoga Part 2 - set of yoga asanas that can be practiced anytime, ai...
 
Incorporating Clicks, Attention and Satisfaction into a SERP Evaluation Model
Incorporating Clicks, Attention and Satisfaction into a SERP Evaluation ModelIncorporating Clicks, Attention and Satisfaction into a SERP Evaluation Model
Incorporating Clicks, Attention and Satisfaction into a SERP Evaluation Model
 
How to Generate 195,013 Visitors a Month Without Spending a Dollar on Ads
How to Generate 195,013 Visitors a Month Without Spending a Dollar on AdsHow to Generate 195,013 Visitors a Month Without Spending a Dollar on Ads
How to Generate 195,013 Visitors a Month Without Spending a Dollar on Ads
 
The impact of innovation on travel and tourism industries (World Travel Marke...
The impact of innovation on travel and tourism industries (World Travel Marke...The impact of innovation on travel and tourism industries (World Travel Marke...
The impact of innovation on travel and tourism industries (World Travel Marke...
 
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job? Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
Succession “Losers”: What Happens to Executives Passed Over for the CEO Job?
 
Open Source Creativity
Open Source CreativityOpen Source Creativity
Open Source Creativity
 
Reuters: Pictures of the Year 2016 (Part 2)
Reuters: Pictures of the Year 2016 (Part 2)Reuters: Pictures of the Year 2016 (Part 2)
Reuters: Pictures of the Year 2016 (Part 2)
 
The Six Highest Performing B2B Blog Post Formats
The Six Highest Performing B2B Blog Post FormatsThe Six Highest Performing B2B Blog Post Formats
The Six Highest Performing B2B Blog Post Formats
 
The Great State of Design with CSS Grid Layout and Friends
The Great State of Design with CSS Grid Layout and FriendsThe Great State of Design with CSS Grid Layout and Friends
The Great State of Design with CSS Grid Layout and Friends
 
The Outcome Economy
The Outcome EconomyThe Outcome Economy
The Outcome Economy
 
32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your Business32 Ways a Digital Marketing Consultant Can Help Grow Your Business
32 Ways a Digital Marketing Consultant Can Help Grow Your Business
 

Similar to PHP 5.5.0 ChangeLog

Introducing PHP Latest Updates
Introducing PHP Latest UpdatesIntroducing PHP Latest Updates
Introducing PHP Latest Updates
Iftekhar Eather
 
New features and enhancement
New features and enhancementNew features and enhancement
New features and enhancement
Rakesh Madugula
 
JavaScript Growing Up
JavaScript Growing UpJavaScript Growing Up
JavaScript Growing Up
David Padbury
 
HelsinkiJS meet-up. Dmitry Soshnikov - ECMAScript 6
HelsinkiJS meet-up. Dmitry Soshnikov - ECMAScript 6HelsinkiJS meet-up. Dmitry Soshnikov - ECMAScript 6
HelsinkiJS meet-up. Dmitry Soshnikov - ECMAScript 6
Dmitry Soshnikov
 
Class loader basic
Class loader basicClass loader basic
Class loader basic
명철 강
 
Introduction to CDI and DI in Java EE 6
Introduction to CDI and DI in Java EE 6Introduction to CDI and DI in Java EE 6
Introduction to CDI and DI in Java EE 6
Ray Ploski
 

Similar to PHP 5.5.0 ChangeLog (20)

ECMAScript 2015
ECMAScript 2015ECMAScript 2015
ECMAScript 2015
 
A Scala tutorial
A Scala tutorialA Scala tutorial
A Scala tutorial
 
Introducing PHP Latest Updates
Introducing PHP Latest UpdatesIntroducing PHP Latest Updates
Introducing PHP Latest Updates
 
Scala in a nutshell by venkat
Scala in a nutshell by venkatScala in a nutshell by venkat
Scala in a nutshell by venkat
 
Oop2010 Scala Presentation Stal
Oop2010 Scala Presentation StalOop2010 Scala Presentation Stal
Oop2010 Scala Presentation Stal
 
Scala presentationjune112011
Scala presentationjune112011Scala presentationjune112011
Scala presentationjune112011
 
New features and enhancement
New features and enhancementNew features and enhancement
New features and enhancement
 
Java 7 & 8 New Features
Java 7 & 8 New FeaturesJava 7 & 8 New Features
Java 7 & 8 New Features
 
Play 2.0
Play 2.0Play 2.0
Play 2.0
 
Svcc Building Rich Applications with Groovy's SwingBuilder
Svcc Building Rich Applications with Groovy's SwingBuilderSvcc Building Rich Applications with Groovy's SwingBuilder
Svcc Building Rich Applications with Groovy's SwingBuilder
 
Spsl vi unit final
Spsl vi unit finalSpsl vi unit final
Spsl vi unit final
 
Spsl v unit - final
Spsl v unit - finalSpsl v unit - final
Spsl v unit - final
 
JavaScript Growing Up
JavaScript Growing UpJavaScript Growing Up
JavaScript Growing Up
 
HelsinkiJS meet-up. Dmitry Soshnikov - ECMAScript 6
HelsinkiJS meet-up. Dmitry Soshnikov - ECMAScript 6HelsinkiJS meet-up. Dmitry Soshnikov - ECMAScript 6
HelsinkiJS meet-up. Dmitry Soshnikov - ECMAScript 6
 
C#.net evolution part 2
C#.net evolution part 2C#.net evolution part 2
C#.net evolution part 2
 
Class loader basic
Class loader basicClass loader basic
Class loader basic
 
Best Of Jdk 7
Best Of Jdk 7Best Of Jdk 7
Best Of Jdk 7
 
Introduction to CDI and DI in Java EE 6
Introduction to CDI and DI in Java EE 6Introduction to CDI and DI in Java EE 6
Introduction to CDI and DI in Java EE 6
 
Bring the fun back to java
Bring the fun back to javaBring the fun back to java
Bring the fun back to java
 
Atlassian Groovy Plugins
Atlassian Groovy PluginsAtlassian Groovy Plugins
Atlassian Groovy Plugins
 

Recently uploaded

Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Peter Udo Diehl
 

Recently uploaded (20)

Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Demystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyDemystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John Staveley
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIs
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
 
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
In-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT ProfessionalsIn-Depth Performance Testing Guide for IT Professionals
In-Depth Performance Testing Guide for IT Professionals
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 

PHP 5.5.0 ChangeLog

  • 2. Introduction On 20-June-2013, PHP 5.5.0 rolled out by the core development team. It consists to some bug fixes as well as some new features.
  • 3. Features included Introduced “Generators” and “Coroutines” Generators : It provides easy way to implement simple iterators such as “foreach”. This implementation will save memory. Coroutines will help in cooperative multitasking. You can write a code to iterate a set of data without creating an array in memory, mainly with the help of “yield” keyword. function getValues() { yield “iOS"; yield “Android"; yield “BlackBarry"; } $stuff = getValues(); foreach($stuff as $thing) { echo $thing . "n"; }
  • 4. Features included “finally” keyword is added Now, a finally block can be written after the try, catch block. This block will be executed regardless of whether an exception has been thrown, and before normal execution resumes. try { echo ”Try Block” . "n"; } catch (Exception $e) { echo 'Caught exception: ', $e- >getMessage(), "n"; } finally { echo “Finally.n"; }
  • 5. Features included A simplified Password hashing API is introduced  It provides an easy to use wrapper around “crypt()” for creating and managing passwords.  No external library is required. No installation is required. No configuration directives in php.ini  password_hash and password_verify are the functions to be used.
  • 6. Features included Constant array/string dereferencing Array and string literals can now be dereferenced directly to access individual elements and characters echo [abc, xyz, pqr][0]; // results abc. echo „DHIRAJ‟[0]; // results D.
  • 7. Features included Scalar class name resolution added  With the help of “::class” keyword, you can get a string containing the fully qualified name of the Class.  Particularly useful with namespaced classes. namespace NS { class ClassName { } echo ClassName::class; //results NSClassName. }
  • 8. Features included Now empty() can be used on any expression empty() function can be called on not only variables but function returns or any other arbitrary expressions.
  • 9. Features included Non-scalar Iterator key support is added The ability to iterate over an array of arrays and unpack the nested array into loop variables by providing a ”list()” as the value. $array = [[1, 2],[3, 4]]; foreach ($array as list($a, $b)) { echo "A: $a; B: $bn"; } result: A: 1; B:2 A: 3; B:4
  • 10. Changes MySQL extension:  This extension has been deprecated, so there will be deprecated warnings on use of this extension. MySQLi extension can be used in place of that.  Support for MySQL 5.6+ has been incorporated in various ways.
  • 11. Many of the bugs have been fixed in this version. The complete change log can be seen on http://php.net/ChangeLog-5.php