2011-07-19 71 views
0

我最近開始使用PHP和SQLite,我遇到了PHP數組問題(我認爲)。這是我使用的代碼:SQLite和PHP陣列的問題

<?php 
$dbo = new SQLiteDatabase("rsc/db.sqlite"); 
$test = $dbo->arrayQuery("DROP TABLE users;"); 
$test = $dbo->arrayQuery("CREATE TABLE \"users\"(name text, avatar text);"); 
$test = $dbo->arrayQuery("INSERT INTO users(name, avatar) VALUES('zad0xsis', 'http://zad0xsis.net/');"); 

// get number of rows changed 
$changes = $dbo->changes(); 
echo "<br />Rows changed: $changes<br />"; 

// Get and show inputted data 
$tableArray = $dbo->arrayQuery("SELECT * FROM users;"); 
echo "Table Contents\n"; 
echo "<pre>\n"; 
print_r($tableArray); 
echo "\n</pre>"; 

?> 

,並顯示數據時(print_r($tableArray);)我得到這個數組:

Array 
(
    [0] => Array 
     (
      [0] => zad0xsis 
      [name] => zad0xsis 
      [1] => http://zad0xsis.net/ 
      [avatar] => http://zad0xsis.net/ 
     ) 

) 

我不知道爲什麼值是重複的,如[0]和[名稱],但它顯示數據。現在,當我嘗試做print_r($tableArray["name"]);我應該得到的價值,但它沒有任何打印:(我做錯了什麼?謝謝!

+0

回波$ tableArray [0] [ 「名稱」];或許 – krifur

+0

嘗試打印像這樣''echo $ tableArray [0] ['name'];' ' –

+1

您得到值重複,因爲您使用mysql_fetch_array語句像,嘗試mysql_fetch_assoc單值 – krifur

回答

3

它可以幫助你選擇兩個

$tableArray[0] 

$tableArray['name']; 

它的罰款

您的問題:你必須

print_r($tableArray[0]['name'])

print_r($tableArray[0][0])

+0

再次看到它,謝謝!這解決了我的問題;) – pmerino

+0

我會在7分鐘內接受答案,當StackOverflow允許我;) – pmerino