PDOStatement :: closeCursor
PDOStatement :: closeCursor - cerrar el cursor, por lo que la sentencia se puede ejecutar de nuevo. (PHP 5> = 5.1.0, PECL pdo> = 0.9.0)
explicación
gramática
bool PDOStatement::closeCursor ( void )
PDOStatement :: closeCursor () libera la conexión con el servicio de base de datos, con el fin de enviar otra instrucción SQL, pero para hacer una declaración en un estado que se puede ejecutar de nuevo.
Cuando se ejecuta un objeto PDOStatement todavía no ha tomado una fila, este método es muy útil para los conductores que no son compatibles con la re-implementación de una base de datos objeto PDOStatement. Si el controlador de la base de datos tan limitado, el trastorno puede aparecer pregunta equivocada.
método PDOStatement :: closeCursor () específica ya sea a una unidad opcional (más eficiente) a lograr, ya sea en ausencia de la unidad para lograr una función particular, como un repuesto en general DOP. General de sobra semánticamente idéntico con el siguiente código PHP:
<?php do { while ($stmt->fetch()) ; if (!$stmt->nextRowset()) break; } while (true); ?>
Valor de retorno
exitoso retorno es TRUE, o en caso de error devuelve falso.
Ejemplos
Un PDOStatement :: closeCursor () ejemplo
En el siguiente ejemplo, $ stmt objeto PDOStatement devuelve varias filas, pero la aplicación toma sólo la primera línea, por lo que es objeto PDOStatement en un estado de no tomar la línea. Para asegurarse de que las aplicaciones puedan funcionar correctamente en todas con bases de datos, ejecutar $ otherStmt antes de objetos PDOStatement, $ stmt llamada una vez PDOStatement :: closeCursor ().
<?php /* 创建一个 PDOStatement 对象 */ $stmt = $dbh->prepare('SELECT foo FROM bar'); /* 创建第二个 PDOStatement 对象 */ $otherStmt = $dbh->prepare('SELECT foobaz FROM foobar'); /* 执行第一条语句 */ $stmt->execute(); /* 从结果集中只取出第一行 */ $stmt->fetch(); /* The following call to closeCursor() may be required by some drivers */ $stmt->closeCursor(); /* 现在可以执行第二条语句了 */ $otherStmt->execute(); ?>