2017-09-08 14 views
1

私は、この配列が動的に引っ張られている配列$ myarrayのPHPシフト配列要素は

Array ([0] => Apple [1] => Orange [2] => Grape [3] => Plum) 

を持っている、しかし、私は特定の順序である配列の内容を必要としています。例えばブドウは常に最初、梅は常に秒になるであろう、Appleは常に第三になるとオレンジ色は、最後の

Array ([0] => Grape [1] => Plum [2] => Apple [3] => Orange) 

そして、これが動的に行われていると何の「葡萄」梅がないとき言うことができますする必要があります。最初にリンゴ、オレンジになる必要があります。元

Array ([0] => Plum [1] => Apple [2] => Orange) 

私は、これはPHP

+1

をやろうとしているのthats何を推測、これはロジックをソートするカスタムの場合は、カスタムコードでそれを実装するしかありません。それ以外の場合は、より現実的な例を使って、達成したいことをよりよく説明してください。 – Calimero

+0

このような特定の注文が必要な場合は、どのような価値があるかを知る必要があります。 Jusは値の順序で配列を作成し、結果配列をループして、順序配列と比較します。 – Michel

+0

[配列とデータをPHPで並べ替えるにはどうすればいいですか?](https://stackoverflow.com/questions/17364127/how-can-i-sort-arrays-and-data-in-php)マニュアル、静的な順序にソート* – iainn

答えて

0

で行うことができる方法を知りませんあなたは、単にこのお探しですか?あなたが特定のインデックスを設定したい場合はhttp://php.net/array_shift

そうでない場合は、ちょうどこのようにそれを実行します。これは、あなたの配列のインデックス2(第3要素)を設定します

$myArray = []; 
$myArray[2] = new Plum(); 

0

は、あなたの配列が

$array = array(); 

であり、あなたは配列に入れている値は$果物や果物$の変化であると言うことができます。ただ

array_push($array,$fruit) 

$場合furitsが

$fruits = "Grape"; 
$fruits = "Plum"; 
$fruits = "Apple"; 
$fruits = "Orange"; 

として来てください、あなたは

$array[0] = "Grape"; 
$array[1] = "Plum"; 
$array[2] = "Apple"; 
$array[3] = "Orange"; 

取得

ループではなく、ループ内のユーザーのarray_pushであればarray_pushない場合$ fruits coming with as

$fruits = "Plum"; 
    $fruits = "Apple"; 
    $fruits = "Orange"; 

あなたは

$array[0] = "Plum"; 
    $array[1] = "Apple"; 
    $array[2] = "Orange"; 

を取得し、私はあなたが

2
$array = array('Apple', 'Orange','Grape','Plum'); 
// order of array 
$order = array('Grape', 'Plum', 'Apple','Orange'); 
// testing no 'Grapes' 
$array2_missing = array('Apple', 'Orange','','Plum'); 


$result = array_intersect($order, $array); 
print_r($result); 

Output: Array ([0] => Grape [1] => Plum [2] => Apple [3] => Orange) 
Output2 : Array ([1] => Plum [2] => Apple [3] => Orange)