2013-05-03 22 views
19

私のスクリプトは、私のxamppでうまく動作しています。今度はサーバーにアップロードしようとしましたが、直接顔を出して構文解析エラー:予期しない構文エラー '[' with php 5.3

Parse error: syntax error, unexpected '['

と出ています。 :(

は、その約からかっ行は、このいずれかになります。

$item = $xml->xpath($path)[0]; 

そして、私は何が間違っている見当がつかない私は、PHP 5.3のchangelogに見えるようにしようとしたが、それについては何も見つかりませんでした(。全体のコードブロックは次のようになり、私は、サーバー上の5.3を持っている、とXAMPPにそのolderversionので)

$path = '//item[@id="'.$id.'"]'; 
if ($xml->xpath($path)) { 
    $item = $xml->xpath($path)[0]; 
} else { 
    die('<p class="error">Script Error: Code 101 - Please contact administrator</p>'); 
} 

私は任意の助けに感謝していて、私はグーグルで[Wiki検索することができず、それから来ることができないアイデア、XAMPP上以来取り組んで罰金

+9

を試してみていません。あなたの場合 '$ item = $ xml-> xpath($ path); $ item [0]; ' – Kin

+3

*" PHP 5.4以降では、関数やメソッド呼び出しの結果を直接参照することはできますが、一時変数を使用する前に直接参照することは可能です。 "* http://php.net/ manual/en/language.types.array.php –

+0

$ item = $ xml-> xpath($ path0);私は知りませんが、この仕事はありますか? –

答えて

37

は、あなたがこのようにそれを使用するために5.4を必要とし、この $item = $xml->xpath($path);
$item = $item[0];

+4

また、> = PHP 5.4.xにマイグレーションすることもできます。 –

+0

copypastaのプロモーションのためにダウンしました。 –

関連する問題