2012-04-19 13 views
0

の下で、私は完璧に動作Linuxでスクリプトを開発してきたではない、

php -l 

コマンドは誤りがないと言います実際には正常に実行されます。しかし、私はWAMPの下でそれを実行しようとする度に、私は

Parse error: syntax error, unexpected $end

メッセージの最後を指しています!私は検索しますが、私はエラーを見つけられません、PHPのバージョンは2つのマシンで同じです! Windowsのスクリプトではなく、Linuxのサーバ上でスクリプトを動かすことができるかどうか考えてみてください。

+1

スニペットを投稿するだけです。 The about about}のように –

+0

のように、PHP構文の強調表示付きテキストエディタを使用して、欠落している箇所を特定します。 – thescientist

+1

@andreswinterの答えがあなたを助けないなら、スクリプトは非常に役立つでしょう、とにかくスクリプトを見ることができる機密部分を取り除こうとしてください! – giorgio

答えて

10

の下で、このエラーの原因となるコードブロックを考えることはできません! htmlを表示するコードの中に<?があった^^ <?phpである必要があります。私はなぜ窓が<?タグからPHPファイルを知らないのだろうかと思います!

+1

@bungu:php-tagを知らないように設定しているためです。それは簡単です。 PHPを設定する方法については、http://php.net/manual/ini.core.php#ini.short-open-tagを参照してください。 – hakre

+0

ローカルサーバからプロダクションサーバへ、またはプロダクションサーバからプロダクションサーバへの移動時にこのようなことが起こります。私はWAMPで短いタグをオフにして、Linux Apache環境からライブサーバーをコピーしたときにメニューページの1つを破ったのかと疑問に思っていました。その理由は、短いタグをどこかのテーマで使用しているため、ライブサーバーでは有効になりますが、ローカルホストでは有効になりません。単に "short_open_tag = On"タグをオンにするためにWAMPサーバー上のphp.iniを編集するだけで問題は解決しました。私の好みの修正は、短いタグをオフにすることですが、それはテーマコードを更新することを意味し、テーマの自動更新に影響します。 –

+0

なぜ私のプラグインが新しいホストで動作しないのだろうと思ったのですが、それは<?私の古いホストはでした 私はファイルを検索し、<? <?phpの代わりに、それを修正しました。今はすべてが再び動作します! – CommentLuv

3

これは、コードに}を忘れたか、文字列を閉じることを忘れたことを意味します。

しかし、エラーが発生する。このために、あなたは

2

アンドレアスが書いたように、これは通常、ブロックまたは引用が閉じられていないことを意味し、コードを:)投稿する必要は、質問しません。

しかし、あなたはコードがLinuxで正常に動作することを、言った -

多分あなたはどこかshorttags(<?代わりの<?php)を使用し、それらが有効になっていません...ので、何かが2つのセットアップの間で異なっている必要がありますWAMPサーバーで?

UNIXとWindowsの間で、他の大きな違いは、通常は改行されたファイルが、私はそれを見つけた改行のみ窓

+0

I user <?php ... code ...?>と "hello world"スクリプトが両方のサーバで動作します – ubugnu

関連する問題