1

重複の可能性:
PHPオープンタグ「<?=」と「<?php」/「&lt ;?」の違いは何ですか?

タイプではなく:

<?php echo $foo; ?>

私はそれが書かれているのを見ました

<?= $foo; ?>

しかし、私はしばしばそれを行うことのリスク/非現実性が何であるか疑問に思いましたか?ちょっと興味があるんだけど。ありがとう!


PHPを使用してMySqlサーバーとの間で画像をアップロードおよび取得するためのサンプルコード

PHPを使用してMySqlデータベースとの間で画像をアップロードおよび取得する方法。画像をBLOB形式でMySqlデータベースとの間で保存および取得できるように、画像を同等のバイナリに変換するサンプルコードが必要です。私はオンラインで最善を尽くしましたが、できませんでした。どんな助けでも大歓迎です。

4

5 に答える 5

2

2番目のオプションは、読みやすさを向上させます。1つ目は、他のシステムへの移植性を保証します。

それ以外は全く違いはありません...

于 2011-10-26T16:36:07.403 に答える
2

有効になっていない環境にコードを移動するとshort_open_tag、多くの内部変数名が公開され(セキュリティの問題)、出力が大幅に破損します。

もう1つの欠点は、使用を許可する同じ設定が、を使用し<?=てPHPタグを開くことができる設定と同じ<?であるため、無効にすると、表示しようとした特定の変数が公開されるだけでなく、短いタグ内のPHPコードも表示されることです。 。

于 2011-10-26T16:34:54.090 に答える
1

ポータブルではありません。これをオフにする 5.4 より前の構成設定があるため、スクリプトが無効になっているサイトにスクリプトを移動すると、スクリプトが壊れます。

また、私の意見ではあまり明確ではありません。<?= func() ?>との違い<? func(); ?>は見落としがちですが、重要です

于 2011-10-26T16:34:37.140 に答える
0

PHPを実行しているときに使用できるのは、短いタグが有効になっている場合<?のみです。<?=これを使用しない実際の理由は、xml宣言と互換性がないためです。php拡張子を使用してxmlを出力しようとしていて、短いタグを有効にしている場合は、<<??>?..のようなことを行う必要があります。文字列をエコーするだけでよいと思います。

于 2011-10-26T16:38:13.873 に答える
-1

私はその移植性の話のすべてを理解していません。

常に移植性の問題があります。
apacheはあり得ないので、mod_rewriteを使用しないでください。
PDOはあり得ないので、プリペアドステートメントは使用しないでください。
mysqlは存在できないため、複雑なクエリを使用しないでください。
PHPは存在できません。したがって、プレーンHTMLが最も互換性のある形式であり、移植性の問題があるため、他のものを使用しないでください。

于 2011-10-26T16:41:59.120 に答える