Latest web development tutorials
×

PHP curso

PHP curso PHP breve introducción PHP instalar PHP gramática PHP variable PHP echo/print PHP Tipos de datos PHP constante PHP cadena PHP operadores PHP If...Else PHP Switch PHP formación PHP Ordenación de un conjunto PHP superglobals PHP While circulación PHP For circulación PHP función PHP Las variables mágicas PHP Los espacios de nombres PHP Orientado a Objetos

PHP formulario

PHP formulario PHP autenticación de formularios PHP formulario - Los campos necesarios PHP formulario - correo electrónico de verificación y la URL PHP instancia completa formulario PHP $_GET variable PHP $_POST variable

PHP Tutorial avanzado

PHP Las matrices multidimensionales PHP fecha PHP contener PHP expediente PHP Cargar archivo PHP Cookie PHP Session PHP E-mail PHP seguridad E-mail PHP Error PHP Exception PHP filtro PHP filtro avanzado PHP JSON

PHP 7 nuevas características

PHP 7 nuevas características

PHP base de datos

PHP MySQL breve introducción PHP MySQL conexión PHP MySQL La creación de una base de datos PHP MySQL Crear una tabla de datos PHP MySQL insertar datos PHP MySQL Insertar datos múltiples PHP MySQL Sentencias preparadas PHP MySQL leer datos PHP MySQL WHERE PHP MySQL ORDER BY PHP MySQL UPDATE PHP MySQL DELETE PHP ODBC

PHP XML

XML Expat Parser XML DOM XML SimpleXML

PHP & AJAX

AJAX breve introducción AJAX PHP AJAX base de datos AJAX XML AJAX búsqueda en tiempo real AJAX RSS Reader AJAX voto

PHP Manual de referencia

PHP Array PHP Calendar PHP cURL PHP Date PHP Directory PHP Error PHP Filesystem PHP Filter PHP FTP PHP HTTP PHP Libxml PHP Mail PHP Math PHP Misc PHP MySQLi PHP PDO PHP SimpleXML PHP String PHP XML PHP Zip PHP Timezones PHP Procesamiento de imágenes PHP RESTful

PDOStatement :: fetchAll

Manual de PHP DOP Referencia Manual de PHP DOP Referencia

PDOStatement :: fetchAll - devuelve una matriz de todas las filas del conjunto de resultados (PHP 5> = 5.1.0, PECL pdo> = 0.1.0)


explicación

gramática

array PDOStatement::fetchAll ([ int $fetch_style [, mixed $fetch_argument [, array $ctor_args = array() ]]] )

parámetros

fetch_style

¿Cómo controlar la línea siguiente se devuelve a la persona que llama. Este valor debe ser PDO :: FETCH_ * constantes en una serie, el valor por defecto para el PDO :: ATTR_DEFAULT_FETCH_MODE (por defecto PDO :: FETCH_BOTH).

Para devolver un conjunto de resultados que contiene una matriz de todos los valores en una sola columna, es necesario especificar PDO :: FETCH_COLUMN. Recibe las columnas deseadas especificando el parámetro índice-columna.

¿Quieres conseguir el conjunto de resultados de valores únicos en una sola columna, necesita PDO :: FETCH_COLUMN y PDO :: bit a bit o FETCH_UNIQUE.

Para devolver una columna basada en el valor especificado de la matriz asociativa agrupados, necesitamos PDO :: FETCH_COLUMN y PDO :: bit a bit o FETCH_GROUP.

fetch_argument
parámetro Fetch_style basado en el valor de este parámetro tiene un significado diferente:

  • PDO::FETCH_COLUMN : Vuelve a las columnas indexadas cero.

  • PDO::FETCH_CLASS : devuelve una instancia de la clase especificada, la columna de asignación para cada fila correspondiente a la clase de atributo de nombre.

  • PDO::FETCH_FUNC : la columna de cada fila como un argumento para la función especificada, y devuelve el resultado después de llamar a la función.

ctor_args
Cuando los parámetros fetch_style PDO :: FETCH_CLASS, ya que la definición de los parámetros del constructor de clase.


Valor de retorno

PDOStatement :: fetchAll () devuelve un conjunto de resultados que contiene una matriz de todas las líneas restantes. Cada fila de esta matriz es una matriz o un valor de columna, o un atributo de objeto correspondiente a cada nombre de columna.

Utilice este método para obtener un conjunto de resultados hará que la carga del sistema y puede tardar hasta una gran cantidad de recursos de la red. Recuperar todos los datos y su uso PHP para funcionar, sería mejor considerar el uso de los servicios de base de datos para hacer frente al conjunto de resultados. Por ejemplo, antes y recuperar datos a través del proceso de PHP para definir los resultados con WHERE y cláusulas ORDER BY en SQL.


Ejemplos

Obtener todas las filas restantes en el conjunto de resultados

<?php
$sth = $dbh->prepare("SELECT name, colour FROM fruit");
$sth->execute();

/* 获取结果集中所有剩余的行 */
print("Fetch all of the remaining rows in the result set:\n");
$result = $sth->fetchAll();
print_r($result);
?>

La salida del ejemplo anterior es:

Fetch all of the remaining rows in the result set:
Array
(
    [0] => Array
        (
            [NAME] => pear
            [0] => pear
            [COLOUR] => green
            [1] => green
        )

    [1] => Array
        (
            [NAME] => watermelon
            [0] => watermelon
            [COLOUR] => pink
            [1] => pink
        )

)

Al ser un único conjunto de resultados todos los valores

El siguiente ejemplo demuestra cómo concentrar una declaración por separado todos los valores de un resultado, a pesar de que la propia sentencia SQL puede devolver múltiples columnas por fila.

<?php
$sth = $dbh->prepare("SELECT name, colour FROM fruit");
$sth->execute();

/* 获取第一列所有值 */
$result = $sth->fetchAll(PDO::FETCH_COLUMN, 0);
var_dump($result);
?>

La salida del ejemplo anterior es:

Array(3)
(
    [0] =>
    string(5) => apple
    [1] =>
    string(4) => pear
    [2] =>
    string(10) => watermelon
)

De acuerdo con una agrupación separada todos los valores

El siguiente ejemplo muestra cómo devolver un valor de la columna especificada matriz asociativa centralizado basado en los resultados del paquete. La matriz contiene tres teclas: manzana y pera matriz devuelta contiene dos colores diferentes, mientras que la sandía vuelto matriz contiene un solo color.

<?php
$insert = $dbh->prepare("INSERT INTO fruit(name, colour) VALUES (?, ?)");
$insert->execute(array('apple', 'green'));
$insert->execute(array('pear', 'yellow'));

$sth = $dbh->prepare("SELECT name, colour FROM fruit");
$sth->execute();

/* 根据第一列分组  */
var_dump($sth->fetchAll(PDO::FETCH_COLUMN|PDO::FETCH_GROUP));
?>

La salida del ejemplo anterior es:

array(3) {
  ["apple"]=>
  array(2) {
    [0]=>
    string(5) "green"
    [1]=>
    string(3) "red"
  }
  ["pear"]=>
  array(2) {
    [0]=>
    string(5) "green"
    [1]=>
    string(6) "yellow"
  }
  ["watermelon"]=>
  array(1) {
    [0]=>
    string(5) "green"
  }
}

Cada fila en el resultado de una instancia de una clase

Liezi siguiente muestra PDO :: FETCH_CLASS Obtiene comportamiento estilo.

<?php
class fruit {
    public $name;
    public $colour;
}

$sth = $dbh->prepare("SELECT name, colour FROM fruit");
$sth->execute();

$result = $sth->fetchAll(PDO::FETCH_CLASS, "fruit");
var_dump($result);
?>

La salida del ejemplo anterior es:

array(3) {
  [0]=>
  object(fruit)#1 (2) {
    ["name"]=>
    string(5) "apple"
    ["colour"]=>
    string(5) "green"
  }
  [1]=>
  object(fruit)#2 (2) {
    ["name"]=>
    string(4) "pear"
    ["colour"]=>
    string(6) "yellow"
  }
  [2]=>
  object(fruit)#3 (2) {
    ["name"]=>
    string(10) "watermelon"
    ["colour"]=>
    string(4) "pink"
  }
}

Cada línea llama a una función

Liezi siguiente muestra PDO :: FETCH_FUNC Obtiene comportamiento estilo.

<?php
function fruit($name, $colour) {
    return "{$name}: {$colour}";
}

$sth = $dbh->prepare("SELECT name, colour FROM fruit");
$sth->execute();

$result = $sth->fetchAll(PDO::FETCH_FUNC, "fruit");
var_dump($result);
?>

La salida del ejemplo anterior es:

array(3) {
  [0]=>
  string(12) "apple: green"
  [1]=>
  string(12) "pear: yellow"
  [2]=>
  string(16) "watermelon: pink"
}

Manual de PHP DOP Referencia Manual de PHP DOP Referencia