ホームページ  >  記事  >  バックエンド開発  >  配列の問題をオンラインで解決します。今後追加するポイントが足りず悔しい一日でした~!どうもありがとう

配列の問題をオンラインで解決します。今後追加するポイントが足りず悔しい一日でした~!どうもありがとう

WBOY
WBOYオリジナル
2016-06-23 13:50:49722ブラウズ

配列 1

Array ( [0] => 	Array ( [59] => 上海 [17] => 是 [18] => 一辆 [69] => 福特 [21] => 18-25万 [22] => MPV [23] => 质量 可靠 [24] => 放开刹车 缓步滑行 [26] => 随意 无所谓 [28] => 没有最好 [30] => 无所谓 [31] => 越轻越好 [33] => 有空 就钻 [34] => 尽力 加塞 [35] => 无道路 [36] => 均衡随意 [40] => 经常发生 [43] => 长亮远光灯/雾灯 [44] => 安全气囊上放物品 [45] => 保持车速 [46] => 增加 护板 [47] => 愿意 [48] => 车灯 [49] => 知道 [50] => 低噪音 [51] => 节油轮胎 [52] => 男 [53] => 5-7万 [54] => 1960年之前 )     [1] => Array ( [59] => 其他 )     [2] => Array ( [59] => 上海 [17] => 是 [18] => 一辆 [69] => 别克 [21] => 12-18万 [22] => 两厢轿车 [23] => 价格 实惠 [24] => 随意 无所谓 [26] => 偶尔 [28] => 没有最好 [30] => 稳重不会有误操作 [31] => 越轻越好 [33] => 不得已才改道 [34] => 随意 谦让 [35] => 沙石路 [36] => 轻松舒适 [40] => 从未发生 [43] => 争抢同一车道,肆意抛洒垃圾,变道拐弯不打灯 [44] => 不系安全带,穿拖鞋开车,开车抽烟喝饮料,不使用儿童座椅 [45] => 保持车速,定期保养,选节油轮胎 [46] => 更换 专属轮胎,刹车 套装 [47] => 愿意 [48] => 更换 避震,更换 专属轮胎 [49] => 知道 [50] => 刹车 不打滑,转弯 无振动,操控 灵敏,操控转弯 精准,更耐磨,刹车 距离短,防扎 防刺,高速 稳定性 [51] => 操控轮胎 [52] => 男 [53] => 3-5万元 [54] => 1980-1985 ))

配列 2

上の配列と下の配列を比較します。配列 1 の KEY と値は、それぞれ配列 2 の wjc_bid と wjc_title に等しくなります。配列 1 の内容 (テキスト部分) は、wjc_dhao に置き換えられます。 (配列 2 の番号)。
あらゆる手段を試しましたが、達成できなかったので、オンラインで専門家に助けを求めました。ありがとうございます〜
解決策はないでしょうか?


ディスカッションに返信(解決策)

2 つの配列の var_export の結果をそれぞれ投稿します

2 つの配列の var_export の結果をそれぞれ投稿します


データが多いので一部を切り取りましょう。
配列 1:
array ( 0 => array ( 59 => '上海'、17 => 'はい'、18 => '車'、69 => 'フォード'、21 =>; '180,000-250,000'、22 => 'MPV'、23 => 'ブレーキを放してゆっくり滑ってください'、26 => 'カジュアル、問題ありません'、 28 => 「最善のものはありません」、30 => 「軽いほど良い」、34 => ; 'プラグインに全力を尽くします'、35 => '道路はありません'、40 => '頻繁に発生します'、43 => '、44 => 'エアバッグにアイテムを置く'、45 => 'ガードを追加する'、48 => 'ライト'、49 = > '知っている'、50 => '低燃費タイヤ'、53 => '50,000-70,000'、54 => 1960', ), 1 => 配列 ( 59 => 'その他', ), 2 => 配列 ( 59 => '上海', 17 => 'はい', 18 => '車'、69 => '120,000-180,000'、22 => '手頃な価格'、24 => 、26 =>「時々」、28 =>「安定していて失敗しない」、33 =>必要な場合にのみルートを選択してください。」、34 =>「謙虚に」、35 =>「砂利道」、40 =>「何も起こらなかった」、43 => =>「同じ車線を争う、ゴミを乱雑に投げる、車線を変更してライトを点けないで曲がる」、44 =>「シートベルトを着用しない、スリッパで運転する、運転中に喫煙や飲酒をしない」チャイルドシート」、45 =>「スピードを維持し、定期的なメンテナンスを行い、省燃費タイヤを選択してください」、46 =>「専用タイヤ、ブレーキパッケージを交換してください」、48 => 「ショックアブソーバーを交換し、専用タイヤを交換する」、49 =>「わかる」、50 =>「ブレーキが滑らない、旋回時の振動がなくなり、制御が敏感になる、正確な旋回制御、摩耗が増える」 -耐久性、短い制動距離、耐パンク性と耐刺傷性、高速安定性」、51 =>「タイヤの制御」、53 =>「30,000-50,000元」、54 => ; '1980-1985', ), 3 => 配列 ( 59 => 'その他', ),................
配列 2
array ( 0 => array ( 'wjc_id' => '302', 'wjc_bid' => '59', 'wjc_dhao' => '1', 'wjc_title' => '上海', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 1 => array ( 'wjc_id' => '56', 'wjc_bid' => '17', 'wjc_dhao' => '1', 'wjc_title' => '是', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 2 => array ( 'wjc_id' => '58', 'wjc_bid' => '18', 'wjc_dhao' => '1', 'wjc_title' => '一辆', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 3 => array ( 'wjc_id' => '318', 'wjc_bid' => '69', 'wjc_dhao' => '4', 'wjc_title' => '福特', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 4 => array ( 'wjc_id' => '85', 'wjc_bid' => '21', 'wjc_dhao' => '4', 'wjc_title' => '18-25万', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 5 => array ( 'wjc_id' => '92', 'wjc_bid' => '22', 'wjc_dhao' => '4', 'wjc_title' => 'MPV', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 6 => array ( 'wjc_id' => '97', 'wjc_bid' => '23', 'wjc_dhao' => '4', 'wjc_title' => '质量 可靠', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 7 => array ( 'wjc_id' => '110', 'wjc_bid' => '24', 'wjc_dhao' => '1', 'wjc_title' => '放开刹车 缓步滑行', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 8 => array ( 'wjc_id' => '121', 'wjc_bid' => '26', 'wjc_dhao' => '4', 'wjc_title' => '随意 无所谓', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 9 => array ( 'wjc_id' => '126', 'wjc_bid' => '28', 'wjc_dhao' => '1', 'wjc_title' => '没有最好', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 10 => array ( 'wjc_id' => '137', 'wjc_bid' => '30', 'wjc_dhao' => '4', 'wjc_title' => '无所谓', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), ...................

这个意思?

$a = array ( 0 => array ( 59 => '上海', 17 => '是', 18 => '一辆', 69 => '福特', 21 => '18-25万', 22 => 'MPV', 23 => '质量 可靠', 24 => '放开刹车 缓步滑行', 26 => '随意 无所谓', 28 => '没有最好', 30 => '无所谓', 31 => '越轻越好', 33 => '有空 就钻', 34 => '尽力 加塞', 35 => '无道路', 36 => '均衡随意', 40 => '经常发生', 43 => '长亮远光灯/雾灯', 44 => '安全气囊上放物品', 45 => '保持车速', 46 => '增加 护板', 47 => '愿意', 48 => '车灯', 49 => '知道', 50 => '低噪音', 51 => '节油轮胎', 52 => '男', 53 => '5-7万', 54 => '1960年之前', ), 1 => array ( 59 => '其他', ), 2 => array ( 59 => '上海', 17 => '是', 18 => '一辆', 69 => '别克', 21 => '12-18万', 22 => '两厢轿车', 23 => '价格 实惠', 24 => '随意 无所谓', 26 => '偶尔', 28 => '没有最好', 30 => '稳重不会有误操作', 31 => '越轻越好', 33 => '不得已才改道', 34 => '随意 谦让', 35 => '沙石路', 36 => '轻松舒适', 40 => '从未发生', 43 => '争抢同一车道,肆意抛洒垃圾,变道拐弯不打灯', 44 => '不系安全带,穿拖鞋开车,开车抽烟喝饮料,不使用儿童座椅', 45 => '保持车速,定期保养,选节油轮胎', 46 => '更换 专属轮胎,刹车 套装', 47 => '愿意', 48 => '更换 避震,更换 专属轮胎', 49 => '知道', 50 => '刹车 不打滑,转弯 无振动,操控 灵敏,操控转弯 精准,更耐磨,刹车 距离短,防扎 防刺,高速 稳定性', 51 => '操控轮胎', 52 => '男', 53 => '3-5万元', 54 => '1980-1985', ), 3 => array ( 59 => '其他', ),);$b = array ( 0 => array ( 'wjc_id' => '302', 'wjc_bid' => '59', 'wjc_dhao' => '1', 'wjc_title' => '上海', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 1 => array ( 'wjc_id' => '56', 'wjc_bid' => '17', 'wjc_dhao' => '1', 'wjc_title' => '是', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 2 => array ( 'wjc_id' => '58', 'wjc_bid' => '18', 'wjc_dhao' => '1', 'wjc_title' => '一辆', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 3 => array ( 'wjc_id' => '318', 'wjc_bid' => '69', 'wjc_dhao' => '4', 'wjc_title' => '福特', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 4 => array ( 'wjc_id' => '85', 'wjc_bid' => '21', 'wjc_dhao' => '4', 'wjc_title' => '18-25万', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 5 => array ( 'wjc_id' => '92', 'wjc_bid' => '22', 'wjc_dhao' => '4', 'wjc_title' => 'MPV', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 6 => array ( 'wjc_id' => '97', 'wjc_bid' => '23', 'wjc_dhao' => '4', 'wjc_title' => '质量 可靠', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 7 => array ( 'wjc_id' => '110', 'wjc_bid' => '24', 'wjc_dhao' => '1', 'wjc_title' => '放开刹车 缓步滑行', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 8 => array ( 'wjc_id' => '121', 'wjc_bid' => '26', 'wjc_dhao' => '4', 'wjc_title' => '随意 无所谓', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 9 => array ( 'wjc_id' => '126', 'wjc_bid' => '28', 'wjc_dhao' => '1', 'wjc_title' => '没有最好', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 10 => array ( 'wjc_id' => '137', 'wjc_bid' => '30', 'wjc_dhao' => '4', 'wjc_title' => '无所谓', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ),);foreach($a as $key=>$item) {  foreach($item as $k=>$v) {    foreach($b as $tmp)      if($k == $tmp['wjc_bid'] && $v == $tmp['wjc_title'])        $a[$key][$k] = $tmp['wjc_dhao'];  }}print_r($a);
Array(    [0] => Array        (            [59] => 1            [17] => 1            [18] => 1            [69] => 4            [21] => 4            [22] => 4            [23] => 4            [24] => 1            [26] => 4            [28] => 1            [30] => 4            [31] => 越轻越好            [33] => 有空 就钻            [34] => 尽力 加塞            [35] => 无道路            [36] => 均衡随意            [40] => 经常发生            [43] => 长亮远光灯/雾灯            [44] => 安全气囊上放物品            [45] => 保持车速            [46] => 增加 护板            [47] => 愿意            [48] => 车灯            [49] => 知道            [50] => 低噪音            [51] => 节油轮胎            [52] => 男            [53] => 5-7万            [54] => 1960年之前        )    [1] => Array        (            [59] => 其他        )    [2] => Array        (            [59] => 1            [17] => 1            [18] => 1            [69] => 别克            [21] => 12-18万            [22] => 两厢轿车            [23] => 价格 实惠            [24] => 随意 无所谓            [26] => 偶尔            [28] => 1            [30] => 稳重不会有误操作            [31] => 越轻越好            [33] => 不得已才改道            [34] => 随意 谦让            [35] => 沙石路            [36] => 轻松舒适            [40] => 从未发生            [43] => 争抢同一车道,肆意抛洒垃圾,变道拐弯不打灯            [44] => 不系安全带,穿拖鞋开车,开车抽烟喝饮料,不使用儿童座椅            [45] => 保持车速,定期保养,选节油轮胎            [46] => 更换 专属轮胎,刹车 套装            [47] => 愿意            [48] => 更换 避震,更换 专属轮胎            [49] => 知道            [50] => 刹车 不打滑,转弯 无振动,操控 灵敏,操控转弯 精准,更耐磨,刹车 距离短,防扎 防刺,高速 稳定性            [51] => 操控轮胎            [52] => 男            [53] => 3-5万元            [54] => 1980-1985        )    [3] => Array        (            [59] => 其他        ))

太乱了, 不好搞!
能搞个像你1楼的数组二那样的结构截图?

这个意思?

$a = array ( 0 => array ( 59 => '上海', 17 => '是', 18 => '一辆', 69 => '福特', 21 => '18-25万', 22 => 'MPV', 23 => '质量 可靠', 24 => '放开刹车 缓步滑行', 26 => '随意 无所谓', 28 => '没有最好', 30 => '无所谓', 31 => '越轻越好', 33 => '有空 就钻', 34 => '尽力 加塞', 35 => '无道路', 36 => '均衡随意', 40 => '经常发生', 43 => '长亮远光灯/雾灯', 44 => '安全气囊上放物品', 45 => '保持车速', 46 => '增加 护板', 47 => '愿意', 48 => '车灯', 49 => '知道', 50 => '低噪音', 51 => '节油轮胎', 52 => '男', 53 => '5-7万', 54 => '1960年之前', ), 1 => array ( 59 => '其他', ), 2 => array ( 59 => '上海', 17 => '是', 18 => '一辆', 69 => '别克', 21 => '12-18万', 22 => '两厢轿车', 23 => '价格 实惠', 24 => '随意 无所谓', 26 => '偶尔', 28 => '没有最好', 30 => '稳重不会有误操作', 31 => '越轻越好', 33 => '不得已才改道', 34 => '随意 谦让', 35 => '沙石路', 36 => '轻松舒适', 40 => '从未发生', 43 => '争抢同一车道,肆意抛洒垃圾,变道拐弯不打灯', 44 => '不系安全带,穿拖鞋开车,开车抽烟喝饮料,不使用儿童座椅', 45 => '保持车速,定期保养,选节油轮胎', 46 => '更换 专属轮胎,刹车 套装', 47 => '愿意', 48 => '更换 避震,更换 专属轮胎', 49 => '知道', 50 => '刹车 不打滑,转弯 无振动,操控 灵敏,操控转弯 精准,更耐磨,刹车 距离短,防扎 防刺,高速 稳定性', 51 => '操控轮胎', 52 => '男', 53 => '3-5万元', 54 => '1980-1985', ), 3 => array ( 59 => '其他', ),);$b = array ( 0 => array ( 'wjc_id' => '302', 'wjc_bid' => '59', 'wjc_dhao' => '1', 'wjc_title' => '上海', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 1 => array ( 'wjc_id' => '56', 'wjc_bid' => '17', 'wjc_dhao' => '1', 'wjc_title' => '是', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 2 => array ( 'wjc_id' => '58', 'wjc_bid' => '18', 'wjc_dhao' => '1', 'wjc_title' => '一辆', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 3 => array ( 'wjc_id' => '318', 'wjc_bid' => '69', 'wjc_dhao' => '4', 'wjc_title' => '福特', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 4 => array ( 'wjc_id' => '85', 'wjc_bid' => '21', 'wjc_dhao' => '4', 'wjc_title' => '18-25万', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 5 => array ( 'wjc_id' => '92', 'wjc_bid' => '22', 'wjc_dhao' => '4', 'wjc_title' => 'MPV', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 6 => array ( 'wjc_id' => '97', 'wjc_bid' => '23', 'wjc_dhao' => '4', 'wjc_title' => '质量 可靠', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 7 => array ( 'wjc_id' => '110', 'wjc_bid' => '24', 'wjc_dhao' => '1', 'wjc_title' => '放开刹车 缓步滑行', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 8 => array ( 'wjc_id' => '121', 'wjc_bid' => '26', 'wjc_dhao' => '4', 'wjc_title' => '随意 无所谓', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 9 => array ( 'wjc_id' => '126', 'wjc_bid' => '28', 'wjc_dhao' => '1', 'wjc_title' => '没有最好', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ), 10 => array ( 'wjc_id' => '137', 'wjc_bid' => '30', 'wjc_dhao' => '4', 'wjc_title' => '无所谓', 'wjc_tiaojian' => '0', 'wjc_jieg' => '0', 'wjc_img' => NULL, ),);foreach($a as $key=>$item) {  foreach($item as $k=>$v) {    foreach($b as $tmp)      if($k == $tmp['wjc_bid'] && $v == $tmp['wjc_title'])        $a[$key][$k] = $tmp['wjc_dhao'];  }}print_r($a);
Array(    [0] => Array        (            [59] => 1            [17] => 1            [18] => 1            [69] => 4            [21] => 4            [22] => 4            [23] => 4            [24] => 1            [26] => 4            [28] => 1            [30] => 4            [31] => 越轻越好            [33] => 有空 就钻            [34] => 尽力 加塞            [35] => 无道路            [36] => 均衡随意            [40] => 经常发生            [43] => 长亮远光灯/雾灯            [44] => 安全气囊上放物品            [45] => 保持车速            [46] => 增加 护板            [47] => 愿意            [48] => 车灯            [49] => 知道            [50] => 低噪音            [51] => 节油轮胎            [52] => 男            [53] => 5-7万            [54] => 1960年之前        )    [1] => Array        (            [59] => 其他        )    [2] => Array        (            [59] => 1            [17] => 1            [18] => 1            [69] => 别克            [21] => 12-18万            [22] => 两厢轿车            [23] => 价格 实惠            [24] => 随意 无所谓            [26] => 偶尔            [28] => 1            [30] => 稳重不会有误操作            [31] => 越轻越好            [33] => 不得已才改道            [34] => 随意 谦让            [35] => 沙石路            [36] => 轻松舒适            [40] => 从未发生            [43] => 争抢同一车道,肆意抛洒垃圾,变道拐弯不打灯            [44] => 不系安全带,穿拖鞋开车,开车抽烟喝饮料,不使用儿童座椅            [45] => 保持车速,定期保养,选节油轮胎            [46] => 更换 专属轮胎,刹车 套装            [47] => 愿意            [48] => 更换 避震,更换 专属轮胎            [49] => 知道            [50] => 刹车 不打滑,转弯 无振动,操控 灵敏,操控转弯 精准,更耐磨,刹车 距离短,防扎 防刺,高速 稳定性            [51] => 操控轮胎            [52] => 男            [53] => 3-5万元            [54] => 1980-1985        )    [3] => Array        (            [59] => 其他        ))



版主幸苦
这多个参数怎么替换?
[50] => 刹车 不打滑,转弯 无振动,操控 灵敏,操控转弯 精准,更耐磨,刹车 距离短,防扎 防刺,高速 稳定性

不太明白你的意思

不太明白你的意思



一个KEY对应多个参数,参数中间是豆号分隔的。是不是要多遍历查询呢?

多个参数的替换规则呢?

这么多数据,实在看着很乱,能不能少点数据??

多个参数的替换规则呢?


一样的,数组一的KEY和值分别等于数组二的wjc_bid和wjc_title。

foreach($a as $key=>$item) {  foreach($item as $k=>$v) {    $t = explode(',', $v);    foreach($b as $tmp)      if($k == $tmp['wjc_bid'] && in_array($tmp['wjc_title'], $t))        $a[$key][$k] .= ':'.$tmp['wjc_dhao'];  }}print_r($a);

foreach($a as $key=>$item) {  foreach($item as $k=>$v) {    $t = explode(',', $v);    foreach($b as $tmp)      if($k == $tmp['wjc_bid'] && in_array($tmp['wjc_title'], $t))        $a[$key][$k] .= ':'.$tmp['wjc_dhao'];  }}print_r($a);




版主。。。完全停不下来,怎么变成循环这么多次,且中文没替换。
求解决

我有意这么写的,目的就是要你检查你的规则是否合适!

我有意这么写的,目的就是要你检查你的规则是否合适!


规则应该问题,数组二的数据是根据数组一在数据库里查出来的。

你说只是替换,但[43] 就存在 1、3、7 多个值,那么该替换成哪个呢?

你说只是替换,但[43] 就存在 1、3、7 多个值,那么该替换成哪个呢?


原来 “争抢同一车道,肆意抛洒垃圾,变道拐弯不打灯”替换成 “1,3,7”这种格式。

你说只是替换,但[43] 就存在 1、3、7 多个值,那么该替换成哪个呢?


比对数组要过滤重复是吧,改成这样?

foreach($a as $key=>$item) {  foreach($item as $k=>$v) {    $t = explode(',', $v);    foreach($b as $tmp)      if($k == $tmp['wjc_bid'] && in_array($tmp['wjc_title'], $t))        $a[$key][$k] = join(','.$tmp['wjc_dhao']);  }}print_r($a);

改成这样报错。。。求解

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。