2015-12-26 34 views
-2

我有一個簡單的問題(不適合我反正:)):數組的長度是錯誤的

我有以下3個變量,我想將它們放在數組中,然後讓這個長度陣列:

$rank1 = "1"; 
$rank2 = "2"; 
$rank3 = "3"; 

我使用這個代碼(我必須使用爲!!!):

for($x = 1; $x <= 3; $x++) { 
$array_rank .= "\"\$rank".$x."\", " ; 
} 
$array_rank2 = array($array_rank); 
$array_rank_length = count($array_rank2); 

數組的長度應該是3,我正在1.

任何幫助,不勝感激。

由於提前,

+0

你爲什麼認爲它應該是'3'?您正在創建一個字符串,然後將其添加到數組中。當你把一件事放在一個數組中時,它只會包含一件事情。 –

+0

1)您將字符串連接到未定義的變量2)啓用錯誤報告以獲取有用的錯誤消息3)您想要做的是使用變量變量來訪問變量,例如, '$ {「rank」。 $ x}'4)你創建一個包含1個元素的數組。你只是想用'[]'來添加它們,例如'$ array [] =「new element」;' – Rizier123

+1

http://php.net/manual/en/function.array.php http://php.net/manual/en/language.types.array.php – Musa

回答

0

剛剛添加一個字符串與文本「$秩1,$秩2,$ rank3」的數組。 [插入圖像「這不是多麼任何的這個作品」]

我相信你正在努力實現的是這樣的:

$rank1 = "1"; 
$rank2 = "2"; 
$rank3 = "3"; 

$array_rank = array(); 

for($x = 1; $x <= 3; $x++) { 
    $array_rank[$x] = ${'rank' . $x}; 
} 

$array_rank_length = count($array_rank); //3 
+0

It works :)非常感謝PierreDuc –

0

首先正確「$秩1,$秩2,$ rank3」這(因爲你越來越字符串).. 然後這段代碼將幫助你..

<?php 

$rank1 = "1"; 
$rank2 = "2"; 
$rank3 = "3"; 
$array_rank = ''; 
for($x = 1; $x <= 3; $x++) { 
$array_rank.= "\"\$rank".$x."\", " ; 
} 
$array_rank2 = explode(',',$array_rank); 
$array_rank_length = count($array_rank2)-1; 

print_r($array_rank2); 
print_r($array_rank_length); 

?>