PhpRiot
News Archive
PhpRiot Newsletter
Your Email Address:

More information
PhpRiot Latest Blog Posts
Displaying blog posts 101 to 120 of 225

Using CLANG/scan-build for Static Analysis of the PHP Interpreter

Using CLANG/scan-build for Static Analysis of the PHP Interpreter
I have been tinkering with CLANG's static analyzer lately. This post summarizes how I installed LLVM and CLANG and performed the analysis of a build of the PHP interpreter. First, we need to obtain the CLANG and LLVM source trees and build CLANG: cd /usr/local/src mkdir clang cd clang svn co http://llvm.org/svn/llvm-project/llvm/trunk llvm cd llvm/tools svn co http://llvm.org/svn/llvm-project/cfe/trunk clang cd ../../ mkdir build cd build ../llvm/configure --enable-optimized --disable-assertions make...

Cracks in the Foundation

Cracks in the Foundation
PHP has been around for a long time, and it's starting to show its age. From top to bottom, the language has creaky joints. I've decided to take a look at how things got to this point, and what can be (and is being) done about it. I start out pretty gloomy, but bear with me; I promise it gets better. In the Beginning, There Was Apache and CGIAnd there was much rejoicing.In 1994, Rasmus Lerdorf created the aoPersonal Home Page Tools,a a set of CGI binaries written in C. These tools looked...

Henrik Bjørnskov's Blog: Stampie an in depth look

Henrik Bjørnskov's Blog: Stampie an in depth look
Henrik Bjørnskov has posted a bit of an in-depth look at Stampie, an abstraction library for sending emails from PHP applications via various service providers (like SendGrid and Mailchimp).So what is Stampie. Stampie is a API wrapper for the most common email sending services. It provides a standard PHP Api to send emails. But mostly it is a project to test TDD and experiment with a couple of different things. Stampie is developed with Dependency Injection and therefore there is a lot of objects. At...

PHP.net: PHP 5.4.0RC3 Released!

PHP.net: PHP 5.4.0RC3 Released!
As mentioned on the main PHP.net site, the latest Release Candidate in the PHP 5.4.x series has been released - PHP 5.4.0RC3:The PHP development team is proud to announce the third release candidate of PHP 5.4. PHP 5.4 includes new language features and removes several legacy (deprecated) behaviours. Windows binaries can be downloaded from the Windows QA site. THIS IS A RELEASE CANDIDATE - DO NOT USE IT IN PRODUCTION!. This is the third release candidate. The release candidate phase is intended as a...

PHPMaster.com: Learning Loops

PHPMaster.com: Learning Loops
PHPmaster.com has a new introductory tutorial for those just starting out with PHP (or with programming really) talking about using looping structures for sets of data - for, while/do-while and foreach.A significant advantage of computers is that they can perform repetitive tasks easily and efficiently. Instead of writing repetitive code you can write a set of statements that processes some data and then have the computer execute them repeatedly by using a construct known as a loop. Loops come in several...

PHPClasses.org: Can .NET make PHP run faster than the official PHP implementation?

PHPClasses.org: Can .NET make PHP run faster than the official PHP implementation?
On the PHPClasses blog today the question is posed "can .NET make PHP run faster than the official PHP implementation?" (relating to the use of the Phalanger tool to compile PHP down to .NET assemblies.Recently Phalanger 3.0 was released introducing numerous improvements in terms of compatibility with the PHP 5.3, interoperability with .NET platform implementations including Mono on Linux, and probably most importantly performance improvements. [...] What motivated this article was that a PHP developer...

Lineke Kerckhoffs-Willems' Blog: ProTalk update December 2011

Lineke Kerckhoffs-Willems' Blog: ProTalk update December 2011
Lineke Kerckhoffs-Willems has a new post to her blog today with an update about their in-progress site that wants to share tech knowledge through video, ProTalk:A lot has happened since my October post announcing ProTalk, the secret project I am working on with my friend, Kim Rowan. So much in fact that now seems the ideal time to update you on our progress! Now, down to business! Since announcing the project in early October we have achieved the [several] project milestones.The milestones include...

Site News: Blast from the Past - One Year Ago in PHP

Site News: Blast from the Past - One Year Ago in PHP
Here's what was popular in the PHP community one year ago today:Ibuildings techPortal: lessphp: PHP implementation of Less CSS Webgeekly.com: 20 Tips you need to learn to become a better PHP Programmer SitePoint.com: Introduction to Unit Testing in PHP with PHPUnit PHPBuilder.com: 10 PHP Tricks for Associative Array Manipulation iFadey.com: Get Flickr Images Using SimpleXML Francesco Montefoschi's Blog: PHPADD: abandoned docblocks detector Chris Hartjes' Blog: Fun with API's - FRAPI and django-tastypie...

16.12. Eine EinfAhrung in Behavior Driven Development

16.12. Eine EinfAhrung in Behavior Driven Development
Testdriven Development, also das Schreiben eines oder mehrerer Tests bevor der eigentliche Code entsteht, ist inzwischen ein alter Hut. Ein groAYer Nachteil dieses Verfahrens ist, dass im agilen Umfeld die User Stories erst verstanden werden mAssen. Wenn die Story aber falsch verstanden wurde, dann wird auch der Test falsch implementiert. Knackpunkt ist also immer noch der Abgrund zwischen Analyse und Verdeutlichung der GeschAftsprozesse sowie dem korrekten Erfassen und testen eben jener. Eine LAsung...

Can .NET make PHP run faster than the official PHP implementation?

Can .NET make PHP run faster than the official PHP implementation?
Can .NET make PHP run faster than the official PHP implementation? By Manuel Lemos Phalanger is compiler that generates .NET assemblies from PHP code, so it runs in a .NET virtual machine. The latest benchmarks seem to indicate that PHP applications compiled by Phalanger execute noticeably faster than when they are executed by the official PHP implementation based on Zend engine, even when a caching extension is used. Read this article to learn how Phalanger works and what lessons can be learned to...

15.12. Using custom annotations in PHP

15.12. Using custom annotations in PHP
When developing enterprise software one should always keep an eye on writing code that is easily maintainable, testable and extendable. Design patterns already propose a way to implement a loosely coupled architecture. With annotations you can take a step forward to make your code look even more expressive, focusing on the primary problem instead of writing a lot of boilerplate code. A single comment line can save you many more lines of code but as it is written in the project's domain language it will...

Cross-Origin Ajax with CORS

Cross-Origin Ajax with CORS
There's no doubt that Ajax is one of the most exciting, useful, and necessary web technologies available to front-end developers. Unfortunately, it's also one of the most restrictivea-aespecially when it comes to gathering content from other domains. Web developers are nothing if not persistent, so we've come up with a variety of ways to get around cross-origin restrictions, including JSONP, server-side proxies made with PHP, ProxyPass proxying, Flash transports, creative iFrame uses, and more. What many...

Deleting the View and Controller..

Deleting the View and Controller..
Article originally from rooJSolutions blog This is NOT a post for people who do not use MVC, Please delete your code, and write it properly.. Anyway, as anybody who has used or written a reasonable framework in PHP knows, MVC is pretty much the golden rule for implementation. There are a dozen frameworks out their based around the principles, with different levels of complexity.My own framework was designed around those principles, and for many years worked perfectly for those classic display a crap...

Devis Lucato's Blog: Select: Inversion of Control

Devis Lucato's Blog: Select: Inversion of Control
In a recent post to his blog Devis Lucato introduces the "Inversion of Control" design pattern and shares an implementation he's created as an illustration - a Service Locator called Select.[In a Service Locator] all the dependencies are provided by a builder, which serves as a registry of dependencies and/or service definitions. The service locator knows how to instantiate each dependency. Such service exposes methods like 'getMailer()', 'getLogger()' etc. A service locator centralises the configuration...

WorkingSoftware Blog: Your templating engine sucks & everything you've written is spaghetti code

WorkingSoftware Blog: Your templating engine sucks & everything you've written is spaghetti code
In a bit of a ranting post on the WorkingSoftware.com.au blog Iain Dooley shares his opinion about most of the code he's seen, specifically related to templating engines: "Your templating engine sucks and everything you have ever written is spaghetti code (yes, you)".Templating is a real hot button in the web development community. [...] The high horses that people usually get on are that all too familiar TLA MVC (Model/View/Controller) architecture and "separation of presentation and business logic"....

DZone.com: Writing Better PHP: Three Guides

DZone.com: Writing Better PHP: Three Guides
On DZone.com today John Esposito has posted about three guides that want to help you improve your PHP development skills (including a forum post and two articles).Sometimes, then, improving your generic 'programming brain' will help you improve your facility with a particular language. At other times, it's more important to learn the nuances of a language, paying close attention to the kind of applications the language is used for. [...] For improving your PHP, then, you can do two things: become a...

Ibuildings techPortal: DPC Radio: Profiling PHP Applications

Ibuildings techPortal: DPC Radio: Profiling PHP Applications
The Ibuildings techPortal has posted the latest episode of their recordings from this year's Dutch PHP Conference - Derick Rethans' talk "Profiling PHP Applications".The web is full of useful advice focussed on pushing out the last bit of performance of your code. They mention trivial changes. like changing every occurrence of print with echo even suggesting to use for instead of foreach. These optimisations help, but you are not going to notice it unless they're in a tight loop with many iterations. It...

Chris Hartjes' Blog: Better HTTP Request/Response in PHP

Chris Hartjes' Blog: Better HTTP Request/Response in PHP
In a recent post to his blog Chris Hartjes looks at the idea of better HTTP Request/Response functionality in PHP, more than just the superglobal handling and PECL HTTP extension it has now.I think the fact that we have $_POST and $_GET lulls some of us into the false sense that we should have $_PUT and $_DELETE objects, since that would map to the commonly-desired set of HTTP verbs that REST likes to use. But what should be inside those things, or should we be moving towards a more Pythonesque solution...

PHP 5.4.0RC3 released

PHP 5.4.0RC3 released
The PHP development team is proud to announce the third release candidate of PHP 5.4. PHP 5.4 includes new language features and removes several legacy (deprecated) behaviours. Windows binaries can be downloaded from the Windows QA site. THIS IS A RELEASE CANDIDATE - DO NOT USE IT IN PRODUCTION!. This is the third release candidate. The release candidate phase is intended as a period of bug fixing prior to the stable release. No new features should be included before the final version of...

Community News: CICONF '12 Speaker List

Community News: CICONF '12 Speaker List
The CICONF (CodeIgniter conference) group has made a new post about the lineup for their next event including people like Adam Griffiths, Alex Bilbie, Alexis Serneels, Harrow "WanWizard" Verton, Nick Jackson and Tyler Flint.The chances are if you are using a library, addon, Spark or tutorial for your CodeIgniter projects it will have been written by one of these guys. Adam Griffiths wrote the book, Alex Bilbie has made some amazing OAuth 2 and Mongo code, WanWizard wrote DataMapper ORM - the most popular...