PHP Digest: Faker PHP Repository, Practical Code Refactoring, the Law of Demeter and Much More
News and Releases:
PHP on mobile platforms, 2 – Andi Gutmans unveiled his company’s new “mobile first” approach to application development. PhoneGap support along with drag-and-drop capabilities for prototyping mobile apps are added to Zend Studio 10. Details are available from the source – recording of Andy Gutmans speech in the Zend official press release.
A closer look into PHP arrays: what you don’t see. – Surely, everyone knows that arrays in PHP are implemented with the hash table. But in this excellent article, the author plunges into the topic quite further. The author shares with you some of the underlying details of how the PHP array data type works, why it works the way that it does, how it’s different from other languages, and what behaviors the PHP array has that you may not be fully aware of.
Over-abstractionism – a reminder for those who use OOP (not just PHP developers) with an appeal not to overuse “abstraction” – the excessive use of all kinds of abstractions at the expense of simplicity.
Spooky Scary PHP – The author has devoted this post to Halloween holiday, having shared with you some scary (but logical) behavior found in PHP itself, and spooky (and possibly quite illogical) ways in which some have twisted PHP to do their bidding.
Symfony and the scary world of PHP – the post where the author expresses his displeasure with PHP and Symfony. “All in all, PHP is still a horrible place to be” – he concludes.
Test Drive PHP 5.5: A Sneak Peek. – The author not only tells us about the new features expected in the new version, but also test-drives practical uses for some of those new features and even giving you some actual bench marks for generators in PHP 5.5.
ZendCon Live – Keynotes from ZendCon, including Andy Gutmans interview, in which he talks about the latest innovations. Records of all other reports are available on youtube.
Practical Code Refactoring, Part 1,2,3,4. – a great series of 4 articles that reveals the essence of refactoring as the way to improve readability, to simplify scalability and to increase code efficiency.
Painless Data Traversal with PHP Filterlterators. – there is load of ways to traverse data, especially in PHP where there are a variety of loops available; including while, do while, for and foreach. These are fine for normal structures, such as scalar and associative arrays. But what if you want to get a bit more fancy? The author provides a small amount of code with a rather trivial approach, and then shows how using FilterIterator, you can extend the default bypass, adding a custom method “accept” to filter out unwanted elements.
Factory patterns: Collaborators Map. – an article about the popular generic design pattern. The author talks about the benefits of using Factories over a DIC and about the approach, called Collaborators Mapr. Examples and recommendations for further improvement and expansion of functionality are given.
Introduction to the Law of Demeter. – an article tells about one of the principles of software design – the Law of Demeter, which can be considered a subset of the loose coupling principle. The author describes the fact that when an object knows way too much about another (and this implicitly includes knowing how to access a third one) is considered wrong and how to find the actual dependencies it needs to work as expected. Examples are given.
List Files and Directories with PHP. – an article describes a common task everyone might have experienced while developing a PHP application: listing files and directories. Several basic and advanced solutions are discussed, each having its pros and cons. First there is a presentation of three approaches that use some very basic PHP functions and then progress to more robust ones which make use of SPL Iterators.
Common WordPress Malware Infections – WordPress is incredibly popular attracting Malware creators. Errors are detected rarely and rectified rather quickly, but not so with plugins and themes. The article describes the popular “viruses”, the methods of how to detect and prevent them.
WordPress Exploit Scanner – a plugin that searches the files and database of your website for signs of suspicious activity. It will not stop someone hacking into your site, but it may help you find any uploaded or compromised files left by the hacker.
“The PHP project is in need of a volunteer” – Rasmus Lerdord has written in Twitter. The PHP project is seeking for a volunteer to help to create and manage a small merchandizing program. The very first task is to find Rasmus email and contact him.
Comments are closed.
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.
All brands and product names used or mentioned on site are or may be the trademarks of their respective owners.
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.
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.
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.
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.
This policy was last modified on 15 April 2011
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.
The list of cookies that we collect is provided below:
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.
This cookie type stores information about what site version is used now (mobile/full).
Stores information about user status (admin/registered/guest)
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 share, follow buttons
Twitter share, follow buttons
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