-1

誰かが問題の迅速な解決策を手伝ってくれますか?

APIから返される文字列があります。文字列は次のようになります。

$ year = "181?make = 2008"

だから私はsubstr($ year、0,3);を使用していました。最初の3桁を取り出します。IE 181問題は、一部の文字列が?の前に2桁しか戻ってこないことです。このように$year= "54?make = 2008"

したがって、?の前に何桁が来るかわからない場合でも、常に?で終わることはわかっています。?の前にすべてのデータを抽出する方法はありますか?そしてそれを新しい変数に変えます...

前もって感謝します!

4

3 に答える 3

2
$year = strstr("181?make=2008","?");
于 2013-02-15T19:02:01.537 に答える
1

list($ data、$ junk)= explode( "?"、$ year); $ dataは、「?」の前にすべてを保持します 次に、私が想像するいくつかの正規表現を実行することもできますが、私にとってはこれははるかに読みやすいです。

于 2013-02-15T19:01:47.077 に答える
1

正規表現は最初の部分を取得するために機能します。何かのようなもの

preg_match("^([0-9]+)\?",$string,$match)

ご希望の年であればご利用いただけます

$year = substr("181?make=2008",-4)
于 2013-02-15T19:04:14.083 に答える