lib/Doctrine/DBAL/Query/QueryBuilder.php
public function createPositionalParameter($value, $type = ParameterType::STRING)
    {
        $this->boundCounter++;
        $this->setParameter($this->boundCounter, $value, $type);

        return '?';
    }
public function createPositionalParameter($value, $type = ParameterType::STRING)
    {
        $this->boundCounter++;
        $this->setParameter($this->boundCounter, $value, $type);

        return '?';
    }
public function createPositionalParameter ( $ value , $ type = ParameterType :: STRING ) { $ this -> boundCounter ++ ; $ this -> setParameter ( $ this -> boundCounter , $ value , $ type ) ; return '?' ; }
Creates a new positional parameter and bind the given value to it.

Attention: If you are using positional parameters with the query builder you have
to be very careful to bind all parameters in the order they appear in the SQL
statement , otherwise they get bound in the wrong order which can lead to serious
bugs in your code.

Example:
<code>
$qb = $conn->createQueryBuilder();
$qb->select('u.*')
->from('users', 'u')
->where('u.username = ' . $qb->createPositionalParameter('Foo', ParameterType::STRING))
->orWhere('u.username = ' . $qb->createPositionalParameter('Bar', ParameterType::STRING))
</code>

@param mixed $value
@param int   $type

@return string
Creates a new positional parameter and bind the given value to it .