第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如果數(shù)組的鍵與另一個數(shù)組的鍵匹配,如何替換數(shù)組中的元素?

如果數(shù)組的鍵與另一個數(shù)組的鍵匹配,如何替換數(shù)組中的元素?

PHP
回首憶惘然 2023-04-15 20:50:51
我有兩個長度相同的 txt 文件(每個文件 10 行)。一個文件具有 ID,另一個文件具有與每個 ID 關聯(lián)的“評級”(0、1、2 等)。例如:文本 1 | 文本 2123 | 1234 | 2等我想在提供 ID 時替換評級。我所做的是搜索與提供的 ID 關聯(lián)的鍵,當它與 ratings 數(shù)組中的鍵匹配時,我替換 ratings 數(shù)組中的相應值。因此,想法是在 ids (key=0) 中找到 '123' 的鍵,并將評級值替換為 key=0(在本例中為 1)以獲得另一個值。我在函數(shù)中有以下內容:public function updateRating($disease, $id, $rating){    $filename = $disease.".txt";    $filename_2 = $disease."Ratings.txt";    $ids = file($filename);    $ratings = file($filename_2);    $index_ids = array_keys($ids, $id."\n");    $index_ratings = array_keys($ratings);    $size = count($ids);    for($i=0; $i<$size; $i++){        if($index_ratings[$i] == $index_ids){            $ratings = str_replace($ratings[$i], $rating."\n", $ratings);        }    }    $ratings_n = implode("", $ratings);    file_put_contents($filename_2, $ratings_n);    return array("debug2" => $index_ids, "debug3" => $index_ratings, "debug4" => $ratings);index_ids(提供的 ID 的鍵)被正確返回,但是評級數(shù)組($ratings)被返回,就好像什么都沒有被替換一樣。這段代碼有什么問題,我怎樣才能更正它來做我想做的事?
查看完整描述

2 回答

?
叮當貓咪

TA貢獻1776條經(jīng)驗 獲得超12個贊

在您的函數(shù)中使用 array_search() 來獲取密鑰:

function replaceValue($value, $arr1, &$arr2){

? ? $key = array_search($value, $arr1);

? ? if($key === false){

? ? ? ? return false;

? ? }else{

? ? ? ? $arr2[$key] = $value;

? ? ? ? return true;

? ? }

}


if(replaceValue("baz", $arr1, $arr2)){

? ? print_r($arr2);

}else{

? ? echo "no match found";

}


Result:


Array

(

? ? [x] => bizz

? ? [y] => bazz

? ? [c] => baz

)


查看完整回答
反對 回復 2023-04-15
?
米脂

TA貢獻1836條經(jīng)驗 獲得超3個贊

您可以按照這種步驟來實現(xiàn)結果


<?php

$arr1 = [0 => '123', 1 => '234'];

$arr2 = [0 => 'a', 1 => 'b'];



for ($i=0; $i < sizeof($arr1) ; $i++) { 

    for ($i=0; $i < sizeof($arr1) ; $i++) { 

        if ($arr1[$i] == '123') {

            $arr2[$i] = 'abc';          

        }

    }

}

echo'<pre>';

print_r($arr2);

echo '<pre>';

?>

輸出


Array

(

    [0] => abc

    [1] => b

)


查看完整回答
反對 回復 2023-04-15
  • 2 回答
  • 0 關注
  • 119 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號