0

次のような配列を作成するスクリプトがあります。

[0] => 1_Result1  
[1] => 2_Result2  
[2] => 3_Result3 

しかし、私はそれが次のように出てくることを望みます:

[0] => Result1  
[1] => Result2  
[2] => Result3

これはどのように行うことができますか?

4

3 に答える 3

2

配列をフィルタリングする方法と配列がどのように形成されるかについて、より具体的なルールを知っておくと役立つ場合がありますが、特定の質問に答えるには:

PHP5.4:

array_map(function ($elem) { return explode('_', $elem)[1]; }, $arr)

PHP 5.3:

array_map(function ($elem) {
    $elem = explode('_', $elem);
    return $elem[1];
}, $arr);
于 2013-03-19T20:37:23.310 に答える
1
foreach ($array as $key => $item) {
    //Cut 2 characters off the start of the string
    $array[$key] = substr($item, 2); 
}

または、より派手になり、から切り離したい場合_

foreach ($array as $key => $item) {
    //Find position of _ and cut off characters starting from that point
    $array[$key] = substr($item, strpos($item, "_")); 
}

これは、PHP 4 および 5 のどのバージョンでも機能します。

于 2013-03-19T20:36:02.663 に答える
0

ここ:

<?php

    $results = array( "1_result1", "2_result2", "3_result3", "4_reslut4");
    $fixed_results = array();
    foreach ($results as $result) 
        {
                $fixed_results[]= substr($result, 2);
        }

    print_r($fixed_results);
?>

戻ります

Array
(
    [0] => result1
    [1] => result2
    [2] => result3
    [3] => reslut4
)

警告: これは、削除するプレフィックスのサイズがわかっている場合にのみ機能します (この場合は 2)。

于 2013-03-19T20:45:31.470 に答える