function connect($zf_host, $zf_user, $zf_password, $zf_database, $zf_pconnect = 'false', $zp_real = false) { $this->database = $zf_database; $this->user = $zf_user; $this->host = $zf_host; $this->password = $zf_password; $this->pConnect = $zf_pconnect; $this->real = $zp_real;
メンバー変数の問題
最近自分で PHP を学び、コードの一部を見ました
class queryFactory extends Base {
var $link, $count_queries, $total_query_time;
queryFactory このクラスには変数がいくつかあります: $link、$count_queries、$ total_query_time。
ただし、queryFactory には connect メソッドがあります
Function connect($zf_host, $zf_user, $zf_password, $zf_database, $zf_pconnect = 'false', $zp_real = false) {
$this->database = $zf_database;
$ this->user = $zf_user;
$this->host = $zf_password;
$this->pConnect = $zf_pconnect; = $zp_real;
$this->database がここに表示されます。queryFactory と queryFactory の親クラスにデータベース メンバーの定義が見つかりませんでした。
しかし、変数データベースは確かに外部からアクセスできます。
var $link、$count_queries、$total_query_time などのデータベース変数をまとめて定義しない理由を作者に聞いてもいいですか。この方法を使用する利点と意義は何ですか
ディスカッションに返信(解決策)
function connect($zf_host, $zf_user, $zf_password, $zf_database, $zf_pconnect = 'false', $zp_real = false) { $this->database = $zf_database; $this->user = $zf_user; $this->host = $zf_host; $this->password = $zf_password; $this->pConnect = $zf_pconnect; $this->real = $zp_real;
ログイン後にコピー
function connect($zf_host, $zf_user, $zf_password, $zf_database, $zf_pconnect = 'false', $zp_real = false) { $this->database = $zf_database; $this->user = $zf_user; $this->host = $zf_host; $this->password = $zf_password; $this->pConnect = $zf_pconnect; $this->real = $zp_real;
これがphp4のプログラミングスタイルです
一般的に、クラスの属性リストで属性を明示的に宣言することは、これらを表現することです属性は存在し、使用できる必要があります
connect メソッドで受信パラメータをクラス属性に割り当てることに関しては、お勧めできません
一般的に言えば、明示的な宣言はクラス属性で行われますリストの属性は、これらの属性が存在する必要があり、使用できることを示すためのものです
connect メソッドで受信パラメータをクラス属性に割り当てることに関しては、お勧めできません
最初に説明してから理由を使用すると、多くのバグを減らすことができます。
これは、メソッドの外で直接定義するのと同じです。
他の変数と一緒に定義することはできません。これにより、変数が定義されていても使用されずにメモリを占有するという状況が回避されます。これが私の意見では最も合理的な場所です。
$this->database ? $link $count_queries はすべて ??? のプロパティです。
はい、そうではありませんが、それはこのクラスの属性です
呼び出しメソッドの観点から見ると、 connect メソッドを呼び出す限り、 $zf_database パラメーターを渡す必要があります。では、クラス属性として保存することに何の意味があるのでしょうか?接続に渡されるパラメータはすべて 1 回限りのパラメータであり、使用後に破棄されるため、保存する必要はありません。そして、それは他の場所では使用されません
これは PHP の利点でもあり、変数を事前に宣言する必要はありません

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

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

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

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

ホットトピック









環境変数は、アプリケーションやプログラムが実行される場所 (または環境) へのパスです。ユーザーはこれらを作成、編集、管理、削除でき、特定のプロセスの動作を管理する場合に便利です。ここでは、Windows で複数の変数を個別に編集することなく、複数の変数を同時に管理するための構成ファイルを作成する方法を説明します。環境変数でプロファイルを使用する方法 Windows 11 および 10 Windows には、ユーザー変数 (現在のユーザーに適用) とシステム変数 (グローバルに適用) の 2 つの環境変数セットがあります。ただし、PowerToys などのツールを使用すると、別の構成ファイルを作成して新しい変数と既存の変数を追加し、それらをすべて一度に管理できます。方法は次のとおりです: ステップ 1: PowerToysPowerTo をインストールする

PHP7 では Strict モードが導入され、開発者が潜在的なエラーを減らすのに役立ちます。この記事では、厳密モードとは何か、および PHP7 で厳密モードを使用してエラーを減らす方法について説明します。同時に、コード例を通じて厳密モードの適用を示します。 1.ストリクトモードとは何ですか? Strict モードは、開発者がより標準化されたコードを作成し、いくつかの一般的なエラーを減らすのに役立つ PHP7 の機能です。厳密モードでは、変数宣言、型チェック、関数呼び出しなどに厳密な制限と検出が行われます。合格

Java のインスタンス変数は、メソッドやコンストラクターではなく、クラスで定義された変数を指します。インスタンス変数はメンバー変数とも呼ばれ、クラスの各インスタンスにはインスタンス変数の独自のコピーがあります。インスタンス変数はオブジェクトの作成時に初期化され、その状態はオブジェクトの存続期間全体にわたって保存および維持されます。インスタンス変数定義は通常、クラスの先頭に配置され、パブリック、プライベート、プロテクト、またはデフォルトのアクセス修飾子など、任意のアクセス修飾子を使用して宣言できます。それは私たちがこれをどうしたいかによって決まります

Ajax を使用して PHP メソッドから変数を取得することは、Web 開発では一般的なシナリオであり、Ajax を使用すると、データを更新せずにページを動的に取得できます。この記事では、Ajax を使用して PHP メソッドから変数を取得する方法と、具体的なコード例を紹介します。まず、Ajax リクエストを処理し、必要な変数を返すための PHP ファイルを作成する必要があります。以下は、単純な PHP ファイル getData.php のサンプル コードです。

PHP 関数の紹介 - strpos(): 変数が文字列であるかどうかを確認する PHP では、is_string() は変数が文字列であるかどうかを確認するために使用される非常に便利な関数です。変数が文字列であるかどうかを判断する必要がある場合、 is_string() 関数を使用すると、この目標を簡単に達成できます。以下では、is_string() 関数の使用方法を学び、関連するコード例をいくつか示します。 is_string() 関数の構文は非常に単純です。必要なのはそれだけです
![内部エラー: 一時ディレクトリを作成できません [解決済み]](https://img.php.cn/upload/article/000/000/164/168171504798267.png?x-oss-process=image/resize,m_fill,h_207,w_330)
Windows システムでは、ユーザーは実行可能ファイル/セットアップ ファイルを使用してさまざまな種類のアプリケーションをシステムにインストールできます。最近、多くの Windows ユーザーが、実行可能ファイルを使用してアプリケーションをインストールしようとすると、システム上で INTERNALERROR:cannotCreateTemporaryDirectory というエラーが表示されると苦情を言い始めています。この問題はこれに限定されず、Windows システムにインストールされている既存のアプリケーションをユーザーが起動することもできなくなります。考えられる理由のいくつかを以下に示します。管理者権限を付与せずに実行可能ファイルを実行してインストールします。 TMP 変数に無効なパス、または異なるパスが指定されました。破損したシステム

Pythonはそのシンプルで読みやすい構文から幅広い分野で広く使われています。プログラミングの効率を向上させ、コードがどのように機能するかを深く理解するためには、Python 構文の基本構造をマスターすることが重要です。この目的を達成するために、この記事では、Python 構文のさまざまな側面を詳しく説明した包括的なマインド マップを提供します。変数とデータ型 変数は、Python でデータを保存するために使用されるコンテナです。マインド マップには、整数、浮動小数点数、文字列、ブール値、リストなどの一般的な Python データ型が表示されます。各データ型には独自の特性と操作方法があります。演算子 演算子は、データ型に対してさまざまな操作を実行するために使用されます。マインド マップは、算術演算子、比率など、Python のさまざまな演算子の種類をカバーしています。

C の const の詳細な説明とコード例 C 言語では、const キーワードを使用して定数を定義します。これは、プログラムの実行中に変数の値を変更できないことを意味します。 const キーワードは、変数、関数パラメータ、関数の戻り値を変更するために使用できます。この記事では、C 言語での const キーワードの使用法を詳細に分析し、具体的なコード例を示します。 const 変更された変数 const を使用して変数を変更する場合、その変数は読み取り専用変数であり、値が割り当てられると変更できないことを意味します。例: 定数
