1
$array = explode(".", $row[copy]);
$a = $array.length -1;

この配列の最後の要素を返したいのですが、これから得られるのは-1だけです。

4

9 に答える 9

9

以下も使用できます。

$a = end($配列);

これにより、配列の内部ポインターも配列の最後に設定されますが、最後の要素を簡単に取得できます。

于 2008-10-02T23:34:43.163 に答える
7

試行回数:

$array = explode(".", $row[copy]);
$a = count($array) - 1;
$array[$a]; // last element
于 2008-10-02T21:55:08.943 に答える
3

array_pop()を使用することもできます。この関数は配列を受け取り、配列の最後の要素を削除して、その要素を返します。

$array = explode(".", $row[copy]);
$a = array_pop($array);

これにより $array が変更され、最後の要素が削除されるため、何かのために配列が必要な場合は使用しないでください。

于 2008-10-02T22:12:42.893 に答える
1

ファイナルの後にすべてが必要な場合。あなたは試すことができます

$pos = strrpos($row['copy'], '.');
$str=($pos!==false) ? substr($row['copy'],$pos+1) : '';

これにより、最後の要素だけが必要な場合に配列を生成する必要がなくなります。

于 2008-10-02T23:41:16.363 に答える
1

実際、あなたが望むことを正確に行う関数があります: end()

$res = end( 爆発('.', $row['copy']) );

于 2008-10-02T23:46:32.560 に答える
0

あなたの2行目はもっと似ているはずだと思います:

$index = count($array) - 1;
$a = $array[$index];

配列の要素が必要な場合は、角括弧を使用する必要があります。

于 2008-10-02T21:54:34.670 に答える
0

私の PHP は少し錆びていますが、次のようにすべきではありません:

$array = explode(".", $row[$copy]);
$a = $array[count($array)];

つまり、「copy」の前に「$」がありませんか? .length は実際に機能しますか?

于 2008-10-02T21:55:37.053 に答える
0

これは PHP としてタグ付けされているため、PHP を使用していると仮定します。

$array = explode(".", $row[copy]);
$a = count($array) - 1;
$value = $array[$a];

ただし、これはキーが数字で 0 から始まる場合にのみ機能します。

配列の最後の要素を取得したいが、数値キーがないか、0 から始まらない場合は、次のようにします。

$array = expand(".", $row[コピー]); $revArray = array_reverse($array, true); $value = $revArray[key($revArray)];

于 2008-10-02T21:57:43.630 に答える
0

こんにちは、これも使用できます:

$stack = array("orange", "banana", "apple", "raspberry"); $fruit = array_pop($stack); print_r($スタック);

この後、$stack には 3 つの要素しかありません。

配列 ( [0] => オレンジ [1] => バナナ [2] => りんご )

ラズベリーは $fruit に割り当てられます。

于 2009-06-26T12:22:45.330 に答える