2013-06-05 32 views
0

使用WP我正在構建分數的細分。每個細分都是一個自定義選擇字段,其值爲1到10.我試圖達到的最終結果是通過計算所有擊穿分數的總和並將其除以添加的數字來顯示WP循環內的總分數故障分數。PHP陣列從以前的帖子gatther陣列

問題是,每一篇文章我加上總分,它從以前的帖子也採取數組。例如:

後1

array(6) { [0]=> array(0) { } [1]=> string(1) "7" [2]=> string(2) "10" [3]=> string(1) "9" [4]=> string(2) "10" [5]=> string(1) "1" } 

後2

array(9) { [0]=> array(0) { } [1]=> string(1) "7" [2]=> string(2) "10" [3]=> string(1) "9" [4]=> string(2) "10" [5]=> string(1) "1" [6]=> array(0) { } [7]=> string(1) "1" [8]=> string(1) "3" } 

後3

array(13) { [0]=> array(0) { } [1]=> string(1) "7" [2]=> string(2) "10" [3]=> string(1) "9" [4]=> string(2) "10" [5]=> string(1) "1" [6]=> array(0) { } [7]=> string(1) "1" [8]=> string(1) "3" [9]=> array(0) { } [10]=> string(1) "9" [11]=> string(2) "10" [12]=> string(1) "3" } 

正如你所看到的帖子2得到它自己的陣列和陣列從後1,郵政3得到它自己的陣列和陣列從後1和後2.

這是我使用的WP內的while循環的代碼

<?php 
$score_rows = get_post_meta($post->ID, 'review_score', true); 
$score[] = array(); 

foreach($score_rows as $row): 
    $score[] = $row['score_number']; 
endforeach; 

$score_items = count($score); 
$score_divide = $score_items; 
$score_sum = array_sum($score); 
$score_total = $score_sum/$score_divide; 
?> 

這段代碼在single.php中效果很好,我只有一篇文章,但是在那裏我有更多的文章呢?如何防止帖子組合這樣的數組?

UPDATE 我發現所有的值都是字符串,也許這就是導致它行爲的原因。是否有可能將值轉換爲整數?

+0

你試過array_merge? – Robert

+0

謝謝你的回答,但我不想合併數組,我希望每個帖子都有它自己的數組。 – Vasili

回答

0

變化

$score[] = array(); 

$score = array(); 
+0

是的,這是問題,我找到了它,只是想寫在這裏的解決方案。謝謝RST,感謝您的迴應。 – Vasili