2011-12-07 52 views
0

指定了以下數組。這些值是在mysql數據庫中的布爾值。它們代表一行的設施:如何顯示這個數組?

<?php 

$facilitiesgroup1=array(); 
$facilitiesgroup2=array(); 

$facilitiesgroup1[1]="Red"; 
$facilitiesgroup1[2]="Black"; 
$facilitiesgroup1[3]="Wite"; 
$facilitiesgroup1[4]="Green"; 

$facilitiesgroup2[1]="Swimming"; 
$facilitiesgroup2[2]="Bowling"; 
$facilitiesgroup2[3]="Tennis"; 
$facilitiesgroup2[4]="Football"; 

?> 

如何在特定記錄的頁面上顯示這些內容? (用逗號分隔,除了最後一個)

---------更新-------------- @Chris 爲了儘可能精確 我的意思是,例如$ facilitygroup1 [1] =「Red」元素由'facilitygroup1_1'字段表示在mysql表中,當它被選中(true)時,該屬性(記錄)具有此設施(紅色)。

這就是我想什麼在分組列表執行查詢後,在個人屬性頁中顯示,如:

<p><strong>Facilities-Group-1:</strong><br /> 
<?php 
echo implode($facilitiesgroup1,', ');?> 
</p> 
<br /> 
<p><strong>Facilities-Group-2:</strong><br /> 
<?php 
echo implode($facilitiesgroup2,', ');?> 
</p> 

當然僅在上面的代碼不會做的工作,怎麼一回事,因爲它列出無論在數據庫的該行中選中什麼內容,都可以在數組中定義所有設施。

回答

1
echo implode(",",$facilitiesgroup1) 
echo implode(",",$facilitiesgroup2) 
0

使用破滅,如:

 
$list = implode(",", $yourArray); 
0

使用implode功能:

$string = implode(',', $facilitiesgroup1); 
echo $string; // Red,Black,White,Green 
2

首先,該值不boolean,他們strings

其次,如果你能阻止他們在兩個不同的陣列之中,這將是更清潔,更容易與工作:

$facilitiesgroups=array(); 
$facilitiesgroups[] = array (
    "Red", 
    "Black", 
    "Wite", 
    "Green" 
); 
$facilitiesgroups[] = array (
    "Swimming", 
    "Bowling", 
    "Tennis", 
    "Football" 
); 

然後,你可以使用這樣的事情(讓每個陣列逗號像CSV ,.)之間一種新的線劃定在:

function make_csv_row(&$item) { 
    $item = implode(',', $item); 
} 
array_walk($facilitiesgroups, 'make_csv_row'); 
implode("\n", $facilitiesgroups); 

否則,如以上證實的,只是使用implode

echo implode(',', facilitiesgroup1); 
echo implode(',', facilitiesgroup2); 

文檔

+0

好的,謝謝,爆效果很好。但是,如果數組的每個元素都綁定到一個mysql字段(true/false),並且我想根據查詢顯示檢查的數組元素呢? (對不起,因爲我不太確定,即使在質疑php問題,我也不太好,因爲我只是試圖將一個asp網站轉換爲php) @Aurelio – Yaelede

+0

我仍然不理解數據庫部分這裏的因素。 –