ホームページ バックエンド開発 PHPチュートリアル PHP NEWBIE で注意が必要な関連する問題

PHP NEWBIE で注意が必要な関連する問題

Jun 13, 2016 pm 01:35 PM
http nbsp php session

PHP 初心者で注意する必要があるいくつかの問題
質問 1: 変数転送の問題

この質問はおそらく誰もが目にする最も一般的な質問です。「なぜ変数は使用できないのか」という質問が常にあります。 PHP をインストールした後に使用されますか? ページ間で渡されますか?

PHP4.2 以降、PHP.INI の register_globals 設定が Off に変更され、4.2 以前のバージョンでは実行できた一部のプログラムが実行できなくなりました。

なぜこのようにするかというと、register_globals を On に設定すると、PHP 自体にセキュリティ上のリスクが生じるためです。プログラムの設計が厳密でない場合、ページ間で渡される変数を他の人が特定の手段で取得することができます (ひどい問題です)。解決策は 2 つあります。1 つは、PHP.INI の register_globals を On にリセットすることです (そうしませんか?)。もう 1 つは、ページ間で変数を渡すときに PHP によって用意されたグローバル変数セットを使用することです。以下のように:

$_POST['varname'];//post メソッドを通じて送信された変数は、主にフォームの送信 (

) に使用されます。

$_GET['varname'];//get メソッドを通じて送信された変数は () からの送信に使用でき、またページ パラメーター (http:/) を取得するためにも使用できます。 /test.php?a=ok)。

$_COOKIE['varname'];

$_SESSION['varname']; // セッションと cookie に保存された変数を取得するために使用されます。

実際、上記の変数名は別の形式で書くことができます: $HTTP_*_VARS['varname']、つまり $HTTP_POST_VARS['varname'], $HTTP_GET_VARS['varname'], $ HTTP_COOKIE_VARS[ 'varname'], $HTTP_SESSION_VARS['varname'] ですが、このように書くのは安全ではないようなので、皆さんは最初に述べた書きやすく安全な方法を使用してください。



質問 2: SESSION 設定について

警告: open(tmpsess_a18eaa908774d353293cf91777599c9​​0, O_RDWR) が失敗しました: 行 0 の不明なファイルまたはディレクトリ (2) はありません

プログラムで SESSION が使用されている場合、友人の中には次の質問をする人もいます。SESSION が使用されているページに上記のような警告が表示されるのはなぜですか?

この状況は WINDOWS システムでのみ発生します。これは、PHP.INI では、SESSION のデフォルトの保存パスが session.save_path='tmp' であり、実際には *nix パスの書き込み方法であり、WINDOWS ではそのようなパスが存在しないためです。そのため、PHP は SESSION を保存する場所を見つけることができず、当然警告が発行されます。解決策は、「tmp」を WINDOWS システムに存在するディレクトリのアドレスに置き換えることです。

もう 1 つの問題は、SESSION を使用する場合、現在のページの SESSION 変数を取得したい場合は、プログラムの先頭に session_start() を追加する必要があり、その前に出力が存在しないことです。つまり、1行目に session_start() を書くのがベストです。



質問 3: ページの最大実行時間について

大きなファイルをアップロードしたり、データベースから大量のデータを読み込んだりすると、ページの実行時間が変化する可能性があります。非常に長いです。 PHP.INI のページ実行時間の最大制限は、デフォルトで max_execution_time=30 に設定されています。これは、プログラムの実行が 30 秒間終了しない場合、プログラムは自動的に応答を停止することを意味します。したがって、実行するプログラムに時間がかかる場合は、max_execution_time=300 以上に変更して、プログラムが正常に実行されるようにすることができます。ファイルをアップロードする場合は、次の設定にも注意する必要があります。

upload_max_filesize=2M //アップロードされるファイルの最大容量

post_max_size=2M // post method

memory_limit=8M //各ページの実行時に消費される最大メモリ





----------- -- ----------------

一般的なプログラム設定 max_execution_time=30 で十分です。

この時間を超えると、ほとんどが無限ループになります。


-----解決策---------

ディスカッション

MVP とは何ですか?珍しいです

------解決策---------
話し合う

引用:

MVP とは何ですか?珍しい
Microsoft MVP (Most Valuable Professional) の紹介
Microsoft Most Valuable Professional (MVP) とは、1 つ以上の Microsoft テクノロジの専門知識を持ち、オンラインまたはオフラインのコミュニティ活動に積極的に参加し、定期的に情報を共有する専門家を指します。知識や専門知識を他の専門家と共有し、尊敬され、信頼され、親しみやすい存在となります。
実生活では、人々は常に専門家のアドバイスやフィードバックを信頼します。 Microsoft MVP は、まさに豊富な知識と実践経験を持つ Microsoft 技術専門家のグループです。彼らはマイクロソフトの従業員ではありません...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

CakePHP プロジェクトの構成 CakePHP プロジェクトの構成 Sep 10, 2024 pm 05:25 PM

この章では、CakePHP の環境変数、一般設定、データベース設定、電子メール設定について理解します。

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

Cakephp4 で日付と時刻を操作するには、利用可能な FrozenTime クラスを利用します。

CakePHP ファイルのアップロード CakePHP ファイルのアップロード Sep 10, 2024 pm 05:27 PM

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP ルーティング CakePHP ルーティング Sep 10, 2024 pm 05:25 PM

この章では、ルーティングに関連する次のトピックを学習します。

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 Dec 20, 2024 am 11:31 AM

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

CakePHP バリデータの作成 CakePHP バリデータの作成 Sep 10, 2024 pm 05:26 PM

Validator は、コントローラーに次の 2 行を追加することで作成できます。

See all articles