30+ Links to PHP Training Materials, News about Zend Optimizer+, MySQL 5.6 Release and More

Find the latest news and updates from the PHP world: news and releases, PHP updates and huge collection of training materials.

News and Releases:

  1. What’s new in MySQL 5.6 ? 2 years passed since the release of the latest version. This new long-awaited release contains many new features and improvements, especially for the server performance. It is noteworthy that a little earlier Fedora and openSUSE have announced their intention to replace MySQL with MariaDB in the default installation.
  2. Zend Optimizer+ may be included into PHP 5.5 ? there?s an unexpected news that an extension for an Opcode Cache can be included into the next PHP release. Similar assumptions were heard more than once, and APC was natural candidate. But Rasmus Lerdorf and other core-developers often stated that APC had not reached a stable stage yet and it included too many bugs to be integrated into PHP. And Zeev Suraski, replying to a question in php-internals, suggests the possibility of making Zend Optimizer+ open source and its inclusion into PHP 5.5. However, the alpha releases have not been planned in the actual schedule. That means that the new capabilities are not expected yet. But the community took this news with enthusiasm, and there are chances that the extension will be included into v.5.5. The published RFC document contains a comparison of Optimizer+ with APC among other innovations. Three possible scenarios are expected to be taken on voting: 1. Integration of Optimizer+ into PHP 5.5.0 with delay of the release up to 2 months; 2. Integration of Optimizer + into PHP without delay of release of 5.5; 3. No integration of Optimizer + into PHP, providing it as an optional component available from PECL.
  3. Zend Framework 2.0.7, 2.1.0 is released. 2.1.1 followed right behind. v.2.0.7 release represents an impressive changelog, and v.2.1.0 release contains many improvements, including new features to work with push-notifications for iOS and Android devices. v.2.1.1 version introduces a number of fixes.
  4. Web&PHP magazine, Issue 11 ? the latest issue covers the following topics: PHP in the cloud, develop your Agile mindset, database indexing and others.
  5. phpMyAdmin 4.0.0-beta1 is released ? HTML frames are finally removed in this version.

PHP:

  1. PHP 6 pissing in the wind ? an excellent post where the author shares his opinion on the current situation in the PHP community. He cites an example of problems in the language that are constantly blamed by PHP-haters, such as: inconsistency of parameters, absence of scalar objects and Unicode support. First, the author gives a clear, in his view, solution and then explains why there are no changes made yet. He believes that there are too many conservative-minded individuals among core-developers, and that’s why implementing any major changes often fails, as it happened with the accessors. The author calls for progressive changes, and calls to retire those who do not want to work on such changes. The comments to the post appeared to be not less interesting, such as the detailed response from Zeev Suraski.
  2. PHP just grows & grows ? the survey on the use of PHP for the last 10 years was published. In addition to the description of used metrics and estimation peculiarities the post also contains a brief history of PHP language.
  3. Real-World functional programming ? the recent issue contains the detailed post on the current status of the functional paradigm implementation in PHP with an example of calculating the total cost of a shopping cart in a functional style. This time, pay your attention to the book full of ideas and techniques of functional programming.
  4. PHP traits, treat or threat? ? a colorful presentation where the author describes the advantages and disadvantages of the new features in PHP.

Training Materials:

    1. Zend Certifications Tips & Tricks,2 ? an interview with one of PHPBenelux creators Michelangelo van Dam and just a famous blogger Lorna Jane Mitchell, in which they share tips and tricks for Zend certification, answering the questions: benefits of exams completion, how to prepare for exams, what needs to be studied and many others.
    2. Benchmarking cache transcoders in PHP ? the necessity of data serialization?occurs quite often, for example when implementing caching. Obviously the encoding of information takes some time. The author describes the results of testing with built-in serialize/unserialize methods, with igbinary extension, and encoding in JSON-string.
    3. Laravel 4: a start at a RESTful API ? although Laravel 4 is still in beta, there is already a lot of material on this framework. The tutorial describes construction of RESTful API with an example of creating a simple Read-It-Later app. The first part includes the following steps: setting the framework, configuration, use of migrations, use of ORM, authentication, routes setting (taking into account API versioning), creating a controller that implements creation, update, and receiving a list of resources.
    4. How to make async requests in PHP ? an excellent post in which the author describes three ways to make asynchronous requests in PHP. These three methods do not involve the use of any external dependencies such as a queue server – everything is in pure PHP only: quickly socket opening without waiting for response; writing to a log file (pseudo query), fork of curl process. Short examples together with advantages / disadvantages of each method are provided.
    5. Parallel PHPUnit ? a small post on use of parallel PHPUnit to run multiple sets of tests simultaneously. The author mentions possible problems related to state of the race and recommends to use of a Paratest tool.
    6. Doctrine and SOLID ? in his post, the author says that it is impossible to follow the principles of SOLID using Doctrine 2 as well as it is quite difficult to save the Single Responsibility Principle. The author gives a few recommendations on how to improve the code.
    7. How to configure Symfony?s Service Container to use Twitter API ? With this post the author continues his series about Symfony?s Services container 2 (1, 2). In the provided example, the author uses Guzzle HTTP library to create a service connected to the Twitter API.
  1. Logging with PSR-3 to improve reusability ? a rather nice and detailed tutorial on how to create a simple logger for your application by following the new standard adopted recently.
  2. How to write code that embraces change ? an excellent post, which provides an overview of all the principles of architecture design and coding of software that makes the code easy to change and maintain. Clear text is supplemented by easy examples in PHP.
  3. 8 practices to secure your web app ? another post giving classic recommendations on security with examples in PHP.
  4. Simply scale with Nginx, Memcached, PHP-FPM and APC ? a small guide on how to scale web applications using Nginx web server, memcached, PHP-FPM and APC.
  5. Managing PHP Application Builds with Phing ? a good starting point if you decide to automate deployment of your PHP applications. The post provides basic information on use of the Ant-based tool, called Phing. The post also considers an installation via PEAR, the basic project configuration, a sample configuration to run tests on PHPUnit.
  6. Zend Framework 2 ServiceManager ? the latest post introducing Zend Framework 2. Dependency Injection, modules and ModuleManager, EventManager have already been discussed in the previous posts. This time the author explores the ServiceManager component, talks about how to configure it, how to use it properly to simplify the development process, provides examples.
  7. Setting up a PHP development environment on a VPS ? The author encountered a number of problems and inconveniences in the development on usual PCs and decided to use a VPS for this purpose. His experience is described in details in the post.
  8. When To Write Bad Code ? in a short note, Brandon Savage, the author of The PHP Playbook and Mastering Object Oriented PHP, shares his thoughts on when, in his opinion, it is acceptable to write bad code. Ideas are not new, but quite useful as a reminder.
  9. Dependency Injection with Pimple ? when developing applications, we try to create independent modules and components in order to make it possible to reuse them later. But it is quite a difficult task to create fully independent components. Moreover the?dependencies?can bring a lot of problems if they are not under a proper control. In this case, dependency injection is a great solution. The post explains how to use Pimple, a simple library implementing the Dependency Injection – made by one of the Symfony developers.
  10. Composer: Speeding up class autoloading ? in the post the author shows an unusual solution which can speed up the classes with Composer by creating pre-symbolic links to files.
  11. Intro to PHP comments and Docblocks ? a small post on how to comment code properly and construct Doc-blocks.
  12. Creating Yii applications with composer ? the author of the post states that the updating of some specific packages can be rather risky when developing any web app. To solve this issue he represents a composer – the package manager for Yii 2 – describing integration of the composer with Yii 1.1 in the tutorial using Packagist as a standard repository.
  13. PHP: Single Sign On (SSO) Module for Kohana ? in the post the author describes step-by-step implementation process of Single Sign On as a Kohana module.
  14. Composer Stability Flags ? the author describes the way the “flags of stability” work in a composer and the problems related to the versions stability when using the composer. Also the author calls modules / extensions developers to tag their projects and indicate stability of their code in the repositories with the relevant branches.
  15. 1.5x ? 9x faster queries with PHP and MySQL 5.6, really? ? a few tests of fresh MySQL 5.6.
  16. Automated Refactoring ? the author represents the whole process of the automated code refactoring as well as describes its principles and solving methods.
  17. Catch Fatal Errors in PHP ? a short tutorial on how to catch the Fatal Errors and arrange them properly.
  18. SERVER_NAME Versus HTTP_HOST ? the author describes the dependencies in relations between the Host header and SERVER_NAME in Apache, answering the questions of other bloggers on the current topic.
  19. Core Concepts: Attack Surface ? the author tells us what the attack surface is and how this surface can be reduced, thus increasing the security of your application.
  20. Beware the Mass Assignment ? a little bit more about how important it is to filter the user inputted data, what is the problem and how it can be dangerous.
  21. Oauth Authentication for Social Apps in PHP ? a good introduction on how to use OAuth in PHP applications.
  22. Testable Code and SOLID at PHPBNL ? PHPBenelux conference was held in Antwerp recently. The author of the post, who was one of the speakers,?shared slides of his two reports: Testable Code (PDF) and SOLID (PDF).
  23. PHPBenelux Slides ? Ilia Alshanetsky made reports at the same conference. The slides are: Application Logic Security and Introducing PHP 5.4(.11).
  24. Password Storage talk at PHP Benelux 13 ? the slides and materials of the report by Anthony Ferrara from the same PHPBenelux.
  25. Server SQL Modes ? the post contains official documentation on the MySQL server which allows users to know more about all the Server SQL modes and plunge deeper into their special features.

Do you have an awesome business idea? Let’s make it real!

Latest posts


Comments are closed.

Terms of Use

Disclaimer

This Web site and all information contained herein are provided as is without warranty of any kind, either express or implied, including but not limited to any implied warranty of merchantability or fitness for a particular purpose. The texts, documents and related illustrations published on this Web site could include technical inaccuracies or typographical mistakes.

Limitation of Liability

Under no circumstances and under no legal theory (including, but not limited to, negligence) shall Zfort Group be liable to you or any other person for any damages, whether direct, indirect, special, incidental, consequential, punitive or otherwise that result from, arise out of, or are in connection with the use of or access to, or the inability to use or access, this site or its contents, even if Zfort Group has been advised of the possibility of such damaged links.

Trademarks

All brands and product names used or mentioned on site are or may be the trademarks of their respective owners.

Changes

If we decide to change our Terms of Use, changes will be posted on this page.

Privacy Policy

What Information Do We Collect?

We collect information from you when you fill out a contact us form. If you like to contact us you may be asked to enter your: name, e-mail address or phone number. You may, however, visit our site anonymously.

What Do We Use Your Information For?

Any of the information we collect from you may be used in one of the following ways:

  • To personalize your experience
    (Your information helps us to better respond to your individual needs.)
  • To improve our website
    (We continually strive to improve our website offerings based on the information and feed
    back we receive from you.)
  • To improve customer service
    (Your information helps us to more effectively respond to your customer service requests and
    support needs.)
  • To send periodic emails
    (The email address you provide may be used to send you information, respond to inquiries,
    and/or other requests or questions.)
  • To contact you
    (If you ask to contact you.)

How Do We Protect Your Information?

We implement a variety of security measures to maintain the safety of your personal information when you enter or submit your personal information. Submitted information is stored in a secure password-protected database.

Do We Use Cookies?

Yes. Cookies are small files that a site or its service provider transfers to your computer hard drive through your Web browser (if you allow cookies). This enables the sites or service providers systems to recognize your browser and capture and remember certain information.

We use cookies to compile aggregate data about site traffic and site interaction so that we can offer better site experiences and tools in the future.

Do We Disclose any Information to Outside Parties?

We do not sell, trade, or otherwise transfer to outside parties your personally identifiable information. This does not include trusted third parties who assist us in operating our website, conducting our business, or servicing you, so long as those parties agree to keep this information confidential. We may also release your information when we believe release is appropriate to comply with the law, enforce our site policies, or protect ours or others rights, property, or safety. However, non-personally identifiable visitor information may be provided to other parties for marketing, advertising, or other uses.

Third Party Links

Occasionally, at our discretion, we may include or offer third party products or services on our website. These third party sites have separate and independent privacy policies. We therefore have no responsibility or liability for the content and activities of these linked sites. Nonetheless, we seek to protect the integrity of our site and welcome any feedback about these sites.

California Online Privacy Protection Act Compliance

Because we value your privacy we have taken the necessary precautions to be in compliance with the California Online Privacy Protection Act. We therefore will not distribute your personal information to outside parties without your consent.

Children's Online Privacy Protection Act Compliance

We are in compliance with the requirements of COPPA (Children's Online Privacy Protection Act), we do not collect any information from anyone under 13 years of age. Our website, products and services are all directed to people who are at least 13 years old or older.

Online Privacy Policy Only

This online privacy policy applies only to information collected through our website and not to information collected offline.

Your Consent

By using our site, you consent to our websites privacy policy.

Changes to Our Privacy Policy

If we decide to change our privacy policy, we will post those changes on this page.

This policy was last modified on 15 April 2011

Cookie Policy

Cookies are small files that a website you visit (or its service provider) transfers to your computer hard drive via your web browser in case you allow cookies. That enables the websites or service providers systems to recognize your browser in order to capture and remember certain data, e.g. your settings etc.

Cookies play a significant role, and using the Internet without their help would take much more time and efforts.

At Zfort Group we use cookies for the single purpose – we would like our website visitors feel comfortable while surfing our pages. Therefore we gather and store cookies to compile general information about website traffic and interaction so that we could offer improved website experiences and tools in the future.

The list of cookies that we collect is provided below:

Cookie Name Purpose
Google Analytics _utma
_utmb
_utmc
_utmz
_atuvc

These cookies are used to collect information about how visitors use our site. This information helps us to improve the site. The cookies collect information in an anonymous form.

Click here for an overview of privacy at Google

Type of device showMobile

This cookie type stores information about what site version is used now (mobile/full).

CMS 1d85235cca790dc3f8a91d588f4a7655

Stores information about user status (admin/registered/guest)

AddThis Addthis buttons

We use a few cookies form AddThis, Facebook, Twitter, LinkedIn services, so you had an opportunity to follow our updates or share our content at your social profiles.

Facebook Facebook share, follow buttons
Twitter Twitter share, follow buttons
LinkedIn LinkedIn share button

It is a widely known fact that the majority of web browsers permit a limited control of most cookies through the browser settings, which basically means that most browsers give you an actual ability to manage cookies that fit you best. Being aware of that some people prefer not to allow cookies. It can be done by adjusting rules in certain browsers to run cookies on a site-by-site basis, providing the user with a detailed control over their privacy. Generally users can disallow cookies from all websites except the ones they trust. To learn more about cookies, how to manage or delete them, visit http://www.allaboutcookies.org

Developers

  • Management and content

    Roman Shekin - Structure

    Denys Kostin - Project Management

    Joel Kepple - Engagement

    Dmitry Pevnev - Marketing

  • Design

    Elena Chekalina - Ideas, Concept, Design

    Sergii Tymoshenko - Design

    Polina Tishchenko - Design

  • Development and testing

    Alexandra Zhmutskaya - Frontend Development

    Maxim Fedets - Frontend Development

    Yury Vasilenko - JavaScript Development

    Oleg Hladchenko - PHP Development

    Sergey Palkin - PHP Development

    Yuri Matuhno - Quality Assurance

    Show Buttons
    Share On Facebook
    Share On Twitter
    Share On Google Plus
    Share On Linkedin
    Hide Buttons