PHP Mode for emacs on Mac OS X
It's been a long time since I figured this out and I can't remember what resource I used to help me. Anyway to get PHP Mode working with the native emacs bundled with Mac OS X do the following:
$ mkdir elisp; cd elisp $ wget http://bit.ly/cLqD47
Name of current module controller or action from Yii view
I've been using Yii framework a fair bit recently and it seems very nice so far. However I couldn't easily find out how to get hold of these often essential pieces of information from a Yii view. Useful in situations where you want to build a navigation user interface element etc. This is all you need to know...
// Module if(isset($this->module)): echo $this->module->getName(); endif; // Controller echo $this->ID; // Action echo $this->action->id;
ELib and Twitter
I've been working on a PHP library that can sit alongside Empathy (lightweight MVC) on a purely non-dependant way. The idea being that some of my semi-duplicate code across projects can be re-factored into a central toolkit.Instead of dealing with the boring re-factoring straight away I wanted to work on a simple PHP library for making calls to the Twitter Api (excluding the search API so far). What I think I've ended up with is potentially a nice utility for accessing any REST-ful API with a clean way of defining the API 'specification', perhaps with little-to-no performance hit.I didn't want to look at any existing offerings of PHP library to make it more enjoyable while I pondered an elegant solution of my own. In a fairly paradoxical fashion (as is often the case) the main features revealed themselves in reverse order. I started by building a static array, which could contain the specification of the public API. By doing so I forced myself to consider (sometimes subconciously) the different logic that might be involved in ensuring each variety of call could be easily accessed with a standard interface. Eventually it occured to me that a typical call from a web app might look like this:
$t->doCall('url/to/call/'.$id,
array( 'param1' => $value1, 'param2 => $value2),