вставка нескольких массивов php pdo

Я играл несколько часов и пытался разобраться, но похоже на крепкий орешек.

Я могу выполнить вставку одного массива

$person = array('name' => 'Wendy', 'age' => '32');

но если я хочу несколько, как это:

$person = array(array('name'=>'Dan', 'age'=>'30'), array('name' => 'John', 'age' => '25'), array('name' => 'Wendy', 'age' => '32'));

Это не работает? Любая помощь будет оценена.

Для множественной вставки:

public function insertPdo($table, $data){
    try{
        if (!is_array($data) || !count($data)) return false;

        $bind = ':' . implode(', :', array_keys($data));      
        $sql = 'INSERT INTO ' . $table . ' (' . implode(', ',array_keys($data)) . ') ' . 'values (' . $bind . ')';

        $sth = $this->__dbh->prepare($sql);
        $result = $sth->execute($data);

    }
    catch(PDOException $e){
        echo $e->getMessage();
    }
}

Для однократной вставки

$person = array('name'=>'Dan', 'age'=>'30');
$db->insertPdo('test_pdo',$person);

// For Multi Insertion, I'm trying to use this in above function
foreach ($data as $row) {
    $result = $sth->execute($row);
};

$person = array(array('name'=>'Dan', 'age'=>'30'), array('name' => 'John', 'age' => '25'), array('name' => 'Wendy', 'age' => '32'));
$db->insertPdo('test_pdo',$person);

И ошибка:

Error: SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens

Ответы на вопрос(2)

Ваш ответ на вопрос