• PHP pdao用法总结


    $sql = 'SELECT name, colour, calories
        FROM fruit
        WHERE calories < :calories AND colour = :colour';
    $sth $dbh->prepare($sqlarray(PDO::ATTR_CURSOR => PDO::CURSOR_FWDONLY));
    $sth->execute(array(':calories' => 150, ':colour' => 'red'));
    $red $sth->fetchAll();
    $sth->execute(array(':calories' => 175, ':colour' => 'yellow'));
    $yellow $sth->fetchAll();
    1
    2
    3
    4
    5
    6
    7
    $sth $dbh->prepare('SELECT name, colour, calories
        FROM fruit
        WHERE calories < ? AND colour = ?');
    $sth->execute(array(150, 'red'));
    $red $sth->fetchAll();
    $sth->execute(array(175, 'yellow'));
    $yellow $sth->fetchAll();

    总结地址:http://www.cnblogs.com/pinocchioatbeijing/archive/2012/03/20/2407869.html

    http://sjolzy.cn/PDO-query-results-achieved-in-many-ways.html

    无论原来数据库里的数据是什么类型,通过这写遍历方法出来的数组,里面的成员都成了字符串 ? var_dump一下,发现全是string......

    If you want to use PDO::FETCH_CLASS but don't like that all the values are of the type string, you can always use the __construct function of the class specified to convert them to a different type.

    Another way is using mysqlnd, but it seems I had to recompile PHP for that.

    <?php

    class Cdr {
        public $a// int
        public $b// float
        public $c// string
        
        public function __construct() {
            $this->intval($this->a);
            $this->floatval($this->b);
        }
         
    }

    // ...
    $arrCdrs $objSqlStatement->fetchAll(PDO::FETCH_CLASS'Cdr');

    ?>

     setAttribute(PDO::ATTR_EMULATE_PREPARES, false); 

    发现填上这句话后,fetchall得来的类型是正确的。

    如果没有这句话,fetchall得来的都是字符串 

    PDO 指南

    http://www.oschina.net/translate/php-pdo-how-to

  • 相关阅读:
    在Linux下卸载Oracle 11g
    Android UI学习 Menu
    Android中设置EditText获得焦点时不弹出软键盘
    Android ADB 命令
    Oracle下载地址
    Android开发快捷键
    Android中将字符串文字内容复制到系统剪贴板
    MySQL数据库常用备份方法和注意事项
    详解Android首选项框架ListPreference
    sql连接查询方法
  • 原文地址:https://www.cnblogs.com/as3lib/p/5443946.html
Copyright © 2020-2023  润新知