如何将字符串分解为双引号并用逗号php分隔?

时间:2015-11-09 03:29:06

标签: php arrays regex

我想同时运行多个网址,但我不想再次将其复制并粘贴到数组中。我想将它全部作为一个字符串并将其爆炸以使用逗号双引号,就像我们在数组中写一样。

我想从这个

$urls = "
    http://
    http://
    http://
    http://";

进入这个

$urls = array("http://","http://","http://","http://");

这是我到目前为止所做的事情

    <?php
    $urls = "
        http://
        http://
        http://";
     $url = preg_match_all('/"(?:\\\\.|[^\\\\"])*"|\S+/', $urls, $matches);
    foreach($url as $ul){
        echo $ul[1];
    }
?>

4 个答案:

答案 0 :(得分:2)

array_map

在换行符上爆炸数组,首先从开头和结尾修剪空白。然后通过RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT,RelativeLayout.LayoutParams.WRAP_CONTENT); lp.setMargins(lp.leftMargin, 20, lp.rightMargin, lp.bottomMargin); tvcity.setLayoutParams(lp); 传递此数组,再次修剪每个元素以从每个元素中删除空格。

答案 1 :(得分:2)

实际上,您可以通过一些更改来使代码工作

<?php
    $urls = "
        http://a
        http://b
        http://c";
     $url = preg_match_all('/"(?:\\\\.|[^\\\\"])*"|\S+/', $urls, $matches);

    if($url != false && $url > 0 && array_key_exists(0, $matches)) {
        foreach($matches[0] as $ul){
            echo $ul . "<br />";
        }
    }
?>

答案 2 :(得分:1)

你可以这样做;

$urls = "http:// http:// http:// http://";
$myArray= explode(" ", $urls);
echo  '<pre>';
var_dump($myArray);
echo  '<pre>';

你需要在那里添加分隔符

答案 3 :(得分:1)

您可以在preg_split字符串或PREG_SPLIT_NO_EMPTY标记上使用trimmed功能。

$urls = preg_split('/\s+/', trim($urls));

\s+匹配一个或多个空格。

See demo at eval.in