duanjun7801 2013-01-25 19:33
浏览 46
已采纳

如何将一个字符串分成10个变量

Suppose i have a variable which carry a string, something like this:

$data="Fusce massa leo, pharetra sit amet tempus vitae, gravida nec est. Suspendisse at commodo sapien. Duis purus tortor, porttitor nec viverra ut, tempus at justo. Curabitur aliquam, odio non rhoncus aliquet, nulla felis laoreet lacus, sit amet facilisis nunc orci nec erat. Sed interdum, tellus in venenatis vehicula, tortor mauris gravida nisl, eget elementum tortor libero vulputate urna. Nullam euismod porta quam eu imperdiet. Aenean sit amet mauris mauris, id facilisis lectus. Cras sed diam ut nisl imperdiet mattis non a lorem. Nullam iaculis, est id vulputate dictum, odio odio elementum neque, vestibulum dapibus urna nibh vitae lectus. In hac habitasse platea dictumst. Maecenas hendrerit aliquet erat, sit amet tincidunt mauris pulvinar a. Vestibulum porta nulla ut nulla sodales mattis. Curabitur congue, metus sit amet commodo aliquam, eros elit semper nisl, a imperdiet quam diam id neque.

Nam at urna non lorem varius ultricies. Nullam nec pellentesque justo. Nulla lobortis rhoncus enim, vitae blandit augue malesuada sed. Etiam enim risus, volutpat at malesuada ac, placerat sit amet ante. Nam faucibus quam a nunc interdum ultrices. Vivamus eleifend lacus et dui rhoncus semper. Curabitur tempor velit ut mi luctus a feugiat neque feugiat. Proin condimentum aliquam placerat. In non tortor sed tortor interdum aliquam non tempus purus. Aenean rhoncus lobortis eros, ac gravida justo porta ut. Etiam ullamcorper ante sit amet eros lacinia pulvinar vitae non orci. Curabitur orci massa, ultricies id sodales eu, congue vel lectus. Cras a scelerisque nisl. Nulla ornare ultrices nisl, non viverra quam ornare quis.
Aenean non libero non ante cursus ultricies. Morbi tincidunt volutpat diam, quis interdum dolor tempus sed. Sed accumsan auctor est vel imperdiet. Proin auctor congue risus in pharetra. Ut faucibus luctus diam, at vehicula justo pulvinar id. Aliquam ipsum augue, hendrerit ultrices dapibus eu, hendrerit in tellus. Phasellus accumsan, ante eget sodales venenatis, nisl nibh pellentesque odio, a sodales mi eros eu ante. Phasellus a ipsum erat.";


Now i want to use a array and divide the data that comes from the variable $data to: $mdata[0], $mdata[1] $mdata[2] $mdata[3], $mdata[4] $mdata[5] $mdata[6], $mdata[7] $mdata[8] $mdata[9] thoroughly from top to bottom in an equal parentage of data comes from the variable $data.
For example: $mdata[0] will contain
Fusce massa leo, pharetra sit amet tempus vitae, gravida nec est. Suspendisse at commodo sapien. Duis purus tortor
And continuously for other variables of that array ... Any idea?

  • 写回答

1条回答 默认 最新

  • duandang2838 2013-01-25 19:37
    关注

    Get the length of the string, divide length by 10 and str_split it if you want each array item to contain an equal number of characters.

    $length = strlen($data);
    $mdata  = str_split($data, $length / 10);
    

    If you want each array item to contain an equal number of words, not characters, this should work:

    $words = explode(' ', $data);
    $wseg  = floor(count($words) / 10);
    $mdata = array();
    
    for ($i = 0; $i < 9; $i++) {
        $mdata[$i] = implode(' ', array_slice($words, $wseg * $i, $wseg));
    }
    
    $mdata[$i] = implode(' ', array_slice($words, $wseg * $i));
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!