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

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

在php數組中搜索特定詞

在php數組中搜索特定詞

PHP
阿晨1998 2021-12-03 19:28:08
我有一個這樣的數組$array = [    'item1' => 'red',     'item2' => 'blue#foo#',    'item3' => 'green',    'item4' => 'white#foo2#',    'item5' => 'bla#foo3#ck',    'item6' => 'yellow#foo#'];我不想讓所有單詞都被#word# 那樣包圍(單詞可以是任何東西)$list = array_unique([ "#foo#", "#foo2#", "#foo3#", #foo#" ]);并用我的數據替換 $array 中的 $list$data = ['John', 'California', 'Cola', .......];最后去$array = [    'item1' => 'red',     'item2' => 'blueJohn',    'item3' => 'green',    'item4' => 'whiteCalifornia',    'item5' => 'blaColack',    'item6' => 'yellowJohn'];如果有人可以建議我。編輯到@mickmackusa 感謝您的鏈接,但是我怎么能得到我的 $list 呢?這并不是真正的效率,因為如果我的初始數組有很多行,循環(huán)可能需要一些時間,但謝謝。這是使用循環(huán)執(zhí)行此操作的唯一方法嗎?
查看完整描述

1 回答

?
小唯快跑啊

TA貢獻1863條經驗 獲得超2個贊

不,你不必須使用循環(huán)進行更換,但PHP是將“迭代”的陣列不管什么語法,你使用。


Regex 提供了更簡潔的代碼,但如果您想要更好的性能,strtr()循環(huán)內部很可能會執(zhí)行得更快。


我將$array在我的片段中聲明您的輸入數據。下面的兩個示例都將提供以下輸出:


array (

  'item1' => 'red',

  'item2' => 'blueJohn',

  'item3' => 'green',

  'item4' => 'whiteCalifornia',

  'item5' => 'blaColack',

  'item6' => 'yellowJohn',

)

循環(huán)strtr():(演示)


$translations = [

    '#foo#'  => 'John',

    '#foo2#' => 'California',

    '#foo3#' => 'Cola',

];


foreach ($array as &$item) {  // modify values by reference with & symbol

    $item = strtr($item, $translations);  // translate placeholder to desired substring from lookup array

}


var_export($array);

preg_replace(): ( Demo ) *通知模式定界符被添加到查找數組中


$translations = [

    '~#foo#~'  => 'John',

    '~#foo2#~' => 'California',

    '~#foo3#~' => 'Cola',

];


var_export(preg_replace(array_keys($translations), $translations, $array));

ps 如果您不知道如何生成您的$list,那么我無法理解您將如何知道如何將特定占位符轉換為適當的值。我假設您有足夠的項目邏輯知識來編寫適當的翻譯/查找數組。


查看完整回答
反對 回復 2021-12-03
  • 1 回答
  • 0 關注
  • 185 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號