2012-05-22 1 views
6

続かない:私は最初の括弧の前に文字列の最初の部分を取得しようとしている反対側のPHP関数、Iは、文字列、このような何か持って

$abcdef(+$1.00) 

を:

$newstr = strstr($var, '('); 
:私は strstr()を使用する場合

$abcdef 

現在は指定した文字の後に文字列の一部を返します。 0

オカレンスの前にその部分が欲しいです。これを行うstrstr()の逆機能または逆機能は何ですか?

答えて

12

3番目のパラメータとしてtrueを渡します。 manual page you have linkedから

string strstr (string $haystack , mixed $needle [, bool $before_needle = false ]) 

のbefore_needle:TRUE、はstrstr()は、針が最初に出現する前に干し草の山 の一部を返した場合(針を除きます)。

注:このパラメータは、PHP 5.3でのみ追加されています。何らかの理由で古いバージョンが残っている場合は、substr()strpos()の組み合わせが役立つはずです:trueにはstrstrの

$newstr = substr($var, 0, strpos($var, '(')); 
+0

私がしなければならなかったのはそれだけですか?ありがとう@bažmegakapa – bobbiloo

+0

@BobLiuマニュアルを読むことは不思議になります;)。 – kapa

4

設定された第3のパラメータは、それが針の前にこれを行うには

0

より良い方法を発生するのを返します。単純な方法である:

$ NewStrによってすでに=)、 '('($のVARを爆発[0];

説明: $結果=(爆発 'search_for_this'、$のsearch_in_this)[0];

関連する問題