Question: What it says above. Unsurprisingly, I couldn't find a clear answer to this.

I just want to know if calling it more than once in a script will cause a problem.

Answer: 
Quoting [**the manual**](http://fr2.php.net/session_start) :

> 
> As of PHP 4.3.3, calling `session_start()` after the session was
>  previously started will result in an error of level `E_NOTICE`.
>    
> Also, the second session start will simply be ignored.
> 
> 
> 

So, it will not do much -- except raise a notice, which indicates there is some kind of a *problem* ; which means you should not call this function more than once.

**Edit after @hakre's comment :** Just to be sure, I've tested with the following portion of code, which calls session\_start() twice, after making sure errors and notices get reported :

```
<?php
ini_set('display_errors', 'on');
error_reporting(E_ALL | E_STRICT);

session_start();
session_start();

```

And I do get the following notice :

```
Notice: A session had already been started - ignoring session_start() in /.../temp.php on line 6

```
It will cause an error (session already started).

But if you ignore the error, it would be idempotent.

In PHP 5.4, we'll get:
 <http://nl3.php.net/manual/en/function.session-status.php>