doufanglian7585 2016-07-29 07:29
浏览 651
已采纳

用于Foreach循环的PHP逗号分隔符或爆炸

I have a drag and drop JS plugin that saves strings as the following:

["кровать","бегемот","корм","валик","железосталь"]

I have found that I can use str_replace in an array to remove both brackets and " char. The issue that I now have is that I have a invalid argument for passing through the foreach loop as it cannot distinguish each individual word.

$bar = '["кровать","бегемот","корм","валик","железосталь"]';
$new_str = str_replace(str_split('[]"'), '', $bar);

foreach($new_str as $arr){

    echo $arr;

}

So the data now outputted looks as follows (if I were to echo before the foreach loop):

кровать,бегемот,корм,валик,железосталь

Is there anyway in which I can use a comma as a delimeter to then pass this through the foreach, each word being it's own variable?

Is there an easier way to do this? Any guidance greatly appreciated!

  • 写回答

4条回答 默认 最新

  • dqp4933 2016-07-29 07:35
    关注

    Technically, you can use explode, but you should recognize that you're getting JSON, so you can simply do this:

    $bar = '["кровать","бегемот","корм","валик","железосталь"]';
    $new_str = json_decode($bar);
    
    foreach($new_str as $arr){
    
        echo $arr;
    
    }
    

    With no weird parsing of brackets, commas or anything else.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)
编辑
预览

报告相同问题?

手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部