1

こんにちは、「爆発」した変数文字列を「print_r」したいときに問題があります。詳細は以下です..

$var  = "1,2,3,4,5";
$sat = explode(',',$var);

echo"`<pre>`";

print_r($sat);

こんな結果になりたい…

Array
(
    [0] => Array

        (
            [new] => 1
        )
    [1] => Array
        (
            [new] => 2
        )
    [2] => Array
        (
            [new] => 3
        )
    [4] => Array
        (
            [new] => 4
        )
    ...
)

しかし、スクリプトを試してみると、上記と同じではありませんでした。私のスクリプトの何が問題なのか、配列の結果が上記と同じになるようにするにはどうすればよいですか。みんな助けてください!

4

3 に答える 3

4

array_map を使用して、子配列を構築します。array_mapを参照

前のタグを閉じてみてください。ブラウザーで配列をダンプする場合、ブラウザーに依存して配列をフォーマットします。しかし、あなたは pre タグを閉じていません。これは、html が配列をフォーマットするのに役立ちません!

$var = "1,2,3,4,5";

$sat = explode(',', $var);

$sat = array_map("buildArray", $sat);

dump($sat);

function buildArray($value)
{
    return array(
        'new' => $value
    );

}

function dump($res)
{
    echo '<pre>';

    print_r($res);

    echo '</pre>';
}
于 2012-06-23T17:45:04.440 に答える
1
$var  = "1,2,3,4,5";
$sat = explode(',',$var);
$sat = array_map(function($value) { return array('new' => $value); }, $sat );

var_dump($sat);
于 2012-06-23T17:48:17.993 に答える
0
$var  = "1,2,3,4,5";
$sat = explode(',',$var);

function p($value) { return array('new' => $value); }

$sat = @array_map(p, $sat );

echo("<pre>");
print_r($sat);
echo("</pre>");
于 2012-06-23T18:39:54.833 に答える