Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

Hubert Brylkowski:
PHP can’t jump? Thing about recursion.
Dec 26, 2016 @ 15:14:37

Hubert Brylkowski has written up a post to his site looking at recursion in PHP and some of the limitations that can some with traditional methods.

Let’s get straight into the problem – assume we want to calculate nth Fibonacci number. Definition : F(n) = F(n-1) + F(n-2) with seed values F(1) = F(2) = 1 so the most intuitive way to do this is just from the definition (recursive). [...] Yay, everything works, so let’s play with bigger numbers. I would like to know the 35th Fibonacci number. On my machine it takes about 8 seconds. That sucks and takes definitely too long.

He talks about what some of the issues with this normal recursive method is (including how many times the function is called) and a possible way to resolve it. He updates this to use the BCMath handling as the numbers are starting to get larger but soon hits the max nesting level for PHP itself. Instead of traditional recursion, he suggests using a few functions/methods to to "jump" from one call to the next without one having to call the other. He includes some refactoring of this solution and a bit of benchmarking to show the performance gain over traditional methods.

tagged: recursion jump alternative benchmark tutorial fibonacci number

Link: http://brylkowski.com/php-cant-jump-thing-about-recursion/

Robert Basic:
Tags for PHP in Vim
Mar 10, 2016 @ 11:32:34

In a post to his site Robert Basic has shared some helpful plugins for PHP developers using Vim as their primary editor. These plugins not only help you jump around in your code but get more context on where you're at.

One thing I was missing for a long time in Vim is to be able to "jump to definition" in an easy and painless way. The other thing I wanted to improve is to be able to tell easily where am I actually in the code base; to see the current class and method name of wherever the cursor was.

With a bit of googling and poking around, I finally came up with a perfect combo of 5 plugins (yep, five!) that enables me to do both, and a little bit of extra.

He shows examples of using three different things he wanted to be able to do when working in his code and the plugins that satisfy each:

One line examples are included showing how to configure them with your current Vim use.

tagged: tags vim plugin jump definition context class method

Link: http://robertbasic.com/blog/tags-for-php-in-vim

Matthew Weir O'Phinney's Blog:
exuberant ctags with PHP in Vim
Feb 01, 2007 @ 07:17:46

In a new post, Matthew Weir O'Phinney sharing a handy new tool that he discovered - exuberant ctags - that lets you magically click on a class of function name and move to its declaration.

I found exuberant ctags, a library which can be used to generate an index file mapping language objects to source files and the line in the source file where they are declared. Contrary to its name, it's not just for the C language; it currently supports 33 different programming languages, including PHP.

He also includes a usage example in the post, specifically for getting the tool up and working in your Vim installation (via a bash script). Then it's just a matter of issuing a :set command to point at the correct file and you're one keystroke away from the function/class declaration of your choice.

tagged: vim exuberantctags jump function class declaration vim exuberantctags jump function class declaration

Link:

Matthew Weir O'Phinney's Blog:
exuberant ctags with PHP in Vim
Feb 01, 2007 @ 07:17:46

In a new post, Matthew Weir O'Phinney sharing a handy new tool that he discovered - exuberant ctags - that lets you magically click on a class of function name and move to its declaration.

I found exuberant ctags, a library which can be used to generate an index file mapping language objects to source files and the line in the source file where they are declared. Contrary to its name, it's not just for the C language; it currently supports 33 different programming languages, including PHP.

He also includes a usage example in the post, specifically for getting the tool up and working in your Vim installation (via a bash script). Then it's just a matter of issuing a :set command to point at the correct file and you're one keystroke away from the function/class declaration of your choice.

tagged: vim exuberantctags jump function class declaration vim exuberantctags jump function class declaration

Link: