首頁 >後端開發 >php教程 >这样写为什么不能获取内容?

这样写为什么不能获取内容?

WBOY
WBOY原創
2016-06-06 20:16:201281瀏覽

<code> <?php $dbhost='';
$dbname='';
$dbuser='';
$dbpass='';
date_default_timezone_set('PRC');
try{$pdo=new PDO('mysql:host='.$dbhost.';dbname='.$dbname,$dbuser,$dbpass);}
catch(Exception $e){die('sql error');}
$pdo->query('SET NAMES utf8');
function cd(){global $pdo;return $pdo->lastInsertId();}
function qr($var){global $pdo;return $pdo->query($var);}
function fo($var){return qr($var)->fetch();}
function fa($var){return qr($var)->fetchALL();}
$fp=fo('SELECT * FROM post WHERE id=1');
echo $fp['title'];
echo $fp['content'];
?></code>

这样写的话页面什么也不现实

回复内容:

<code> <?php $dbhost='';
$dbname='';
$dbuser='';
$dbpass='';
date_default_timezone_set('PRC');
try{$pdo=new PDO('mysql:host='.$dbhost.';dbname='.$dbname,$dbuser,$dbpass);}
catch(Exception $e){die('sql error');}
$pdo->query('SET NAMES utf8');
function cd(){global $pdo;return $pdo->lastInsertId();}
function qr($var){global $pdo;return $pdo->query($var);}
function fo($var){return qr($var)->fetch();}
function fa($var){return qr($var)->fetchALL();}
$fp=fo('SELECT * FROM post WHERE id=1');
echo $fp['title'];
echo $fp['content'];
?></code>

这样写的话页面什么也不现实

<code> <?php $dbhost='';
$dbname='';
$dbuser='';
$dbpass='';
date_default_timezone_set('PRC');
try{$pdo=new PDO('mysql:host='.$dbhost.';dbname='.$dbname,$dbuser,$dbpass);}
catch(Exception $e){die('sql error');}
$pdo->query('SET NAMES utf8');
function cd(){global $pdo;return $pdo->lastInsertId();}
function qr($var){global $pdo;return $pdo->query($var);}
function fo($var)
{
    //问题出在这里,qr($var)的值是$pdo->query($var)的值,是一个sql的执行结果,而不是对象$pdo,调用fetch肯定出错啊
    return qr($var)->fetch(); 
}
function fa($var){return qr($var)->fetchALL();}
$fp=fo('SELECT * FROM post WHERE id=1');
echo $fp['title'];
echo $fp['content'];
?></code>
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn