-4

次のような文字列を運ぶ変数があるとします。

$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.";


ここで、配列を使用して、変数からのデータを次のように分割し$dataます。、、、、データの等しい親子関係で上から下まで完全に変数から取得し$mdata[0]ます。例:その配列の他の変数に対してAndを継続的に含む...何かアイデアはありますか?$mdata[1] $mdata[2] $mdata[3]$mdata[4] $mdata[5] $mdata[6]$mdata[7] $mdata[8] $mdata[9]$data
$mdata[0]
Fusce massa leo, pharetra sit amet tempus vitae, gravida nec est. Suspendisse at commodo sapien. Duis purus tortor

4

1 に答える 1

4

文字列の長さを取得し、長さを10で除算し、各配列項目に同じ数の文字を含める場合はstr_splitします。

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

各配列項目に文字ではなく同数の単語を含める場合は、次のように機能します。

$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));
于 2013-01-25T19:37:28.903 に答える