Write a PHP script to Fibonacci series in PHP. In this tutorial, We are going to write a PHP script which prints Fibonacci series from 1 to N, where N is the input integer. We are going to use both iterative and recursive approach to print Fibonacci series.

C Program to Print Fibonacci Series using Recursion

Difference between Recursion and Iteration

Before writing program let’s understand what is **Fibonacci series**.

## What is Fibonacci Series?

The Fibonacci series is the series of numbers such as 0, 1, 1, 2, 3, 5,…… in which the next number is the **sum of two previous numbers**.

In Fibonacci series, the first two numbers are 0, 1 or 1, 1 and next number is the sum of previous two numbers.

### An Algorithm to Print Fibonacci Series

i) Initialize first and second number.

first = 0 and second = 1.

ii) Print both first and second number.

iii) Loop from index 2 to N. So third number is the sum of first and second.

1 2 3 4 5 6 7 | for($i = 2; $i < $n; $i++) { $third = $first + $second; echo $third; $first = $second; $second = third; } |

## PHP Script to Print Fibonacci Series in PHP – Iterative Approach

Let’s create a simple PHP function, which takes a number as an argument and print Fibonacci Series up to that number. Here I am writing code using an iterative approach.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | /* Function accepts number as an argument. */ function printFibonacci($n) { $first = 0; $second = 1; echo "Fibonacci Series \n"; echo $first.' '.$second.' '; for($i = 2; $i < $n; $i++){ $third = $first + $second; echo $third.' '; $first = $second; $second = $third; } } /* Function call to print Fibonacci series upto 6 numbers. */ printFibonacci(6); |

Output:

1 2 | Fibonacci Series 0 1 1 2 3 5 |

## PHP Script to Print Fibonacci Series in PHP using Recursion

So far we have discussed the logic of Fibonacci series. I have written a PHP script to generate a series using an iterative approach. Now recursive method to generate Fibonacci series.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | <?php /* Recursive function for fibonacci series. */ function printFibonacci($num){ if($num==0){ return 0; }else if( $num == 1){ return 1; } else { //Recursive call return (printFibonacci($num-1) + printFibonacci($num-2)); } } |