為什麼print_r()能查詢出資料來為什麼加上鍵名就查不出來了?

來源:互聯網
上載者:User

最後一行這樣print_r($res2);可以查詢出資料來 為什麼加上鍵名就會報錯了?
print_r($res2['name']);
提示這個錯誤
Notice: Undefined index: name in D:\wamp\www\fenyechaxun.php on line 16

這是資料庫的內容

prepare("select * from test"); $stmt->execute(); $res=$stmt->fetchall(); $rows=count($res); $pagesize=3; $pagenum=ceil($rows/$pagesize); $page=empty($_GET['page'])?1:$_GET['page'];  $startnum = ($page - 1)*$pagesize; $query = "SELECT * FROM test LIMIT $startnum,$pagesize"; $stmt2=$pdo->prepare($query); $stmt2->execute(); $res2=$stmt2->fetchall(); print_r($res2['name']);?>

回複內容:

最後一行這樣print_r($res2);可以查詢出資料來 為什麼加上鍵名就會報錯了?
print_r($res2['name']);
提示這個錯誤
Notice: Undefined index: name in D:\wamp\www\fenyechaxun.php on line 16

這是資料庫的內容

prepare("select * from test"); $stmt->execute(); $res=$stmt->fetchall(); $rows=count($res); $pagesize=3; $pagenum=ceil($rows/$pagesize); $page=empty($_GET['page'])?1:$_GET['page'];  $startnum = ($page - 1)*$pagesize; $query = "SELECT * FROM test LIMIT $startnum,$pagesize"; $stmt2=$pdo->prepare($query); $stmt2->execute(); $res2=$stmt2->fetchall(); print_r($res2['name']);?>

從你的可以看出~你查詢出來的數組應該是這樣子的:

array(0=>['type'=>1,'name'=>1,'num'=>1,'site'=>1,'content'=>1],1=>['type'=>2,'name'=>2,'num'=>2,'site'=>2,'content'=>2],2=>['type'=>3,'name'=>3,'num'=>3,'site'=>3,'content'=>3],3=>['type'=>4,'name'=>4,'num'=>4,'site'=>4,'content'=>4])

所以你要拿'name'???不太可能吧??
一:要麼你用$query = "SELECT name FROM test LIMIT $startnum,$pagesize";單獨查詢name;
二:可以用foreach迴圈

function foreach($array as $a){    $name[]=$a['name'];}

三:array_column($array,'key') 這個函數好像可以提取某一列的~你試試

$res0 試試?

$res2 是二維數組。

看下$res2的結構就曉得啦。。

參考 http://www.ourlove520.com/php5_doc/function.print-r.html
print_r() 將把數組的指標移到最後邊。

然後他要嘗試移動index的時候,發現並不是 。所以就報一個notice
而且notice並不影響 一般平時我們錯誤層級都把notice關閉的

用 var_dump(); 調試輸出看類型

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.