1--TEST-- 2PDO_Firebird: support EXECUTE BLOCK 3--SKIPIF-- 4<?php require('skipif.inc'); 5?> 6--ENV-- 7LSAN_OPTIONS=detect_leaks=0 8--FILE-- 9<?php 10 require("testdb.inc"); 11 12 $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING); 13 14 $sql = ' 15execute block (a int = :e, b int = :d) 16returns (N int, M int) 17as 18declare z int; 19begin 20 select 10 21 from rdb$database 22 into :z; 23 24 n = a + b + z; 25 m = z * a; 26 suspend; 27end 28'; 29 $query = $dbh->prepare($sql); 30 $query->execute(['d' => 1, 'e' => 2]); 31 $row = $query->fetch(\PDO::FETCH_OBJ); 32 var_dump($row->N); 33 var_dump($row->M); 34 35 unset($query); 36 unset($dbh); 37 echo "done\n"; 38 39?> 40--EXPECT-- 41int(13) 42int(20) 43done 44