-5

文字列があるとしましょう。

$string = red,green,blue,yellow,black;

これで、検索している単語の位置である変数ができました。

$key = 2;

位置が2の単語を取得したいのですが、この場合、答えは。になりますblue

4

5 に答える 5

7

http://codepad.org/LA35KzEZ

$a = explode( ',', $string );
echo $a[ $key ];
于 2012-07-09T15:59:06.013 に答える
1

これを解決するためのより良い方法は、explode()を使用して文字列を配列に変換することです。

$string = ...;
$string_arr = explode(",", $string);
//Then to find the string in 2nd position

echo $string_arr[1]; //This is given by n-1 when n is the position you want.
于 2012-07-09T15:59:46.187 に答える
1
<?php
$string = preg_split( '/[\s,]+/', $str );

echo $string[$key];

これは、単語の境界(スペース、コンマ、ピリオドなど)に基づいて文を単語に分割することで機能します。explode()カンマ区切りの文字列のみを操作している場合を除いて、よりも柔軟性があります。

たとえば、str='こんにちは、私の名前は犬です。「お元気ですか?」、$key= 5、「お元気ですか」を取得します。

于 2012-07-09T16:04:11.350 に答える
0

与えられた:

$string = 'red,green,blue,yellow,black';
$key = 2;

次に(<PHP 5.4):

$string_array = explode(',', $string);
$word = $string_array[$key];

次に(> = PHP 5.4):

$word = explode(',', $string)[$key];
于 2012-07-09T15:59:45.953 に答える
0

単語がコンマで区切られることがわかっている場合は、次のようにすることができます。

$key = 2;
$string = "red,green,blue,yellow,black";
$arr = explode(",",$string);
echo $arr[$key];
于 2012-07-09T16:01:55.797 に答える