2012-07-08 104 views
-1

需要幫助替換數組值 我正在嘗試檢查體驗和空間是否存在於下面的數組中,並用經驗替換空間max(如果其相等的空值/空間替換經驗值,則爲下一個數組值最大值), 我已經粘貼代碼低於該使用來查找和替換陣列值Im,其取代了經驗體驗,而不是空的最大經歷最大php刪除數組中的值

array[1] => name, 
array[2] => Work Experience, 
array[3] => , 
array[4] => company, 
array[5] => location 

O/p:

array[1] => name, 
array[2] => Work Experience, 
array[3] => Work Experience Max, 
array[4] => company, 
array[5] => location 

$search = "Work Experience"; 
foreach ($val as $key=> $cnt) { 
    // echo "inside foreach ".$cnt; 
    if ($cnt == $search) { 
     echo $keyvalue = $key; 
     break; 
    } 
} 
if (isset($keyvalue)) { 
    $firstarryval = array_splice($val, $keyvalue, 1); 
} 

if ($firstarryval == '') { 
    array_splice($val, $keyvalue, 0, "Work Experience Max"); 
} else { 
    array_splice($val, $keyvalue, 0, "Work Experience Max"); 
} 
+0

希望的輸出是什麼樣的? – 2012-07-08 21:05:24

+0

@Dagon array [1] => name, array [2] =>工作經驗, array [3] =>工作經驗Max, array [4] => company, array [5 [=> location – user1510536 2012-07-08 21:12:09

+0

這就是你已經有了以上 – 2012-07-08 21:15:06

回答

0

好的,這是sol ution解釋說:

$arr = array(0=>'name', 1=>'Work Experience', 2=>'', 3=>'company', 4=>'location'); 
var_export($arr); echo '<br/>'; 
$search = "Work Experience"; 
$arrkey = false; 
foreach($arr as $key=>$value){ // set variables and advance internal pointer 
    echo "inside foreach $key => $value <br/>"; 
    if($value == $search) { 
     echo $key; 
     echo $arrkey = key($arr); // internal php pointer already points to next array key 
     break; 
    } 
} 
if ($arrkey!=false && empty($arr[$arrkey])) { 
    $arr[$arrkey] = 'Work Experience Max'; 
} 
echo '<br/>'; var_export($arr); 

相關鏈接:foreachkeyempty。希望它會有所幫助! :-)