Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/255.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php中的分隔符存储_Php_Arrays - Fatal编程技术网

php中的分隔符存储

php中的分隔符存储,php,arrays,Php,Arrays,我得到了一个格式如下的大文件(每次读取一个字符): Lorem ipsum dolor | sit amet | Concetetur | adipiscing Elite 用“|”符号分隔的。 我想将它们存储在一个数组中。像这样: 0=>Lorem ipsum dolor 1=>Lorem ipsum dolor | sit amet 2=>Lorem ipsum dolor | sit amet | concertetur 3=>Lorem ipsum dolor | sit amet |

我得到了一个格式如下的大文件(每次读取一个字符):

Lorem ipsum dolor | sit amet | Concetetur | adipiscing Elite

用“|”符号分隔的。
我想将它们存储在一个数组中。像这样:

0=>Lorem ipsum dolor
1=>Lorem ipsum dolor | sit amet
2=>Lorem ipsum dolor | sit amet | concertetur
3=>Lorem ipsum dolor | sit amet | concetetur | adipsicing elite.


有没有一种方法可以做到这一点,而无需再次通过整条线将它们分开?

我想到的最简单的方法如下

$array将包含您需要的内容

$str = "Lorem ipsum dolor | sit amet, | consectetur | adipiscing elit.";
$array = array();
$cnt = 0;

while(true)
{
    $itms = explode( ' | ', $str, $cnt );
    if(count($itms)==0)
    {
        break;
    }
    else
    {
       $array[] = implode( ' | ', $itms );
    }
    $cnt--;
}

$array = array_reverse( $array );

你打算如何使用它们?看起来,您可以将分隔字符串分解为一个常规数组,并使用数组索引以其累积形式构造字符串,而不是像这样重复存储它们。