1
私は配列を持っています。php - 配列の値を繰り返します。
[1]=>
array(5) {
["chid"]=>
string(1) "1"
["chtext"]=>
string(9) "Excellent"
["chvotes"]=>
string(2) "13"
["weight"]=>
string(1) "1"
["colour"]=>
string(7) "#b3c7e0"
}
色はテキストフィールドから配列に追加されます。 1-4(配列の長さは任意でしたが、色は4
$poll = $entity->choice; // Array
$poll_colours = array(); // Create new array for colours
$colours = $entity->field_poll_colours['und'][0]['value']; // Get value from text field
$poll_colours = explode(',', $colours); // Explode from comma
foreach($poll as $key => $value) {
$poll[$key]['colour'] = $poll_colours[0];
$poll[$key]['colour'] = ltrim($poll[$key]['colour']);
unset($poll_colours[0]);
sort($poll_colours);
}
unset($poll_colours);
配列の長さは、その後の色を繰り返し、4つ以上であれば何を達成したいことは、ある一定の長さであります)。
所望の結果:
[1]=>
array(5) {
["chtext"]=> "A"
["colour"]=> "Cyan"
}
[2]=>
array(5) {
["chtext"]=> "B"
["colour"]=> "Magenta"
}
[3]=>
array(5) {
["chtext"]=> "C"
["colour"]=> "Yellow"
}
[4]=>
array(4) {
["chtext"]=> "D"
["colour"]=> "Black"
}
[5]=>
array(5) {
["chtext"]=> "E"
["colour"]=> "Cyan" // Repeat colour[1]
}
[6]=>
array(5) {
["chtext"]=> "F"
["colour"]=> "Magenta" // Repeat colour[2]
}
... // Repeat colour[3]
... // Repeat colour[4]
... // Repeat colour[1] etc...
ご協力いただきありがとうございます。しかしただ一つのこと。最初の繰り返し色は4番目の色です。最初の色ではありません。 –
訂正:繰り返しは問題ありません。最初のキー/値の順序が間違っています。 –
@Devrim配列インデックスは1ではなく0から開始します。 – Barmar