最も一般的に使用される PHP リフレクション関数 get_class get_class_methods
1. get_class ? オブジェクトのクラス名を返します
string get_class ([ object $obj ] )
オブジェクト インスタンス obj が属するクラスの名前を返します所属しています。 obj がオブジェクトでない場合は FALSE を返します。
注: PHP 拡張ライブラリで定義されたクラスは、元の定義の名前を返します。 PHP 4 では、get_class() はユーザー定義のクラス名の小文字形式を返しましたが、PHP 5 では、拡張ライブラリ内のクラス名と同様に、定義されたとおりのクラス名の名前を返します。
注: PHP 5 以降、オブジェクトのメソッド内で呼び出される場合、obj はオプションです。 exexample#1 get_class()を使用します。 ) , "/n";
}}
// オブジェクトを作成します
$bar = new foo();
// 外部呼び出し
echo "その名前は " , get_class($ bar) , " /n ";
//内部呼び出し
$bar->name();
?>
上記の例は次のように出力します:
Its name is foo My name is foo
2.get_class_methods ? 返回由类的方法名组成的数组説明
array get_class_methods (mixed $クラス名 )
class_name で指定されたクラスで定義されたメソッド名で構成される配列を返します。エラーが発生した場合は NULL が返されます。
Example#1 get_class_methods() 例
class myclass { // コンストラクター
function myclass()
{ return(true) }
//method; 1
関数 myfunc1 ()
{return(true) }
// メソッド 2
function myfunc2(){
return(true) }
}
$class_methods = get_class_methods('myclass'); / /または
$class_methods = get_class_methods(new myclass());
foreach ($class_methods as $method_name) {
echo "$method_name/n"
;出力:
myclass myfunc1 myfunc2
3.
get_class_vars クラスのデフォルトのプロパティで構成される配列を返します
説明
array get_class_vars ( string $class_name )
のデフォルトのパブリック プロパティで構成される連想配列を返しますクラス、この配列要素は varname => value の形式で存在します。
注: PHP 4.2.0 より前では、get_class_vars() には初期化されていないクラス変数は含まれません。
例#1 get_class_vars() の例
class myclass {
var $var1; // 此变量没有默认值……
var $var2 = "xyz";
var $var3 = 100;
private $var4; // PHP 5
// constructor
function myclass() {
// change some properties
$this->var1 = "foo";
$this->var2 = "bar";
return true;
}
}
$my_class = new myclass();
$class_vars = get_class_vars(get_class($my_class));
foreach ($class_vars as $name => $value) {
echo "$name : $value/n";
}
?>
上例将输出:
// 在 PHP 4.2.0 之前 var2 : xyz var3 : 100 // 从 PHP 4.2.0 开始 var1 : var2 : xyz var3 : 100

phpssionsStrackuserdataacrossmultiplepagerequestsusingauniqueidstoredinacookie.here'showtomanageetheemefectively:1)Startassession withsession_start()andstoredatain $ _ session.2)RegeneratesseSsessidafterloginwithsession_id(the topreventes_id)

PHPでは、次の手順を通じてセッションデータを繰り返すことができます。1。session_start()を使用してセッションを開始します。 2。$ _Sessionアレイのすべてのキー価値ペアを介してforeachループを反復します。 3.複雑なデータ構造を処理する場合、is_array()またはis_object()関数を使用し、print_r()を使用して詳細情報を出力します。 4.トラバーサルを最適化する場合、ページングを使用して、一度に大量のデータの処理を避けることができます。これにより、実際のプロジェクトでPHPセッションデータをより効率的に管理および使用するのに役立ちます。

このセッションは、サーバー側の状態管理メカニズムを介してユーザー認証を実現します。 1)セッションの作成と一意のIDの生成、2)IDはCookieを介して渡されます。3)サーバーストアとIDを介してセッションデータにアクセスします。

tostoreauser'snameInappession、starthessession withsession_start()、thensignthenameto $ _session ['username']。1)ousession_start()toinitializethessession.2)assighttheuser'snameto $ _ session ['username']

PHPSESSIONの障害の理由には、構成エラー、Cookieの問題、セッションの有効期限が含まれます。 1。構成エラー:正しいセッションをチェックして設定します。save_path。 2.Cookieの問題:Cookieが正しく設定されていることを確認してください。 3.セッションの有効期限:セッションを調整してください。GC_MAXLIFETIME値はセッション時間を延長します。

PHPでセッションの問題をデバッグする方法は次のとおりです。1。セッションが正しく開始されるかどうかを確認します。 2.セッションIDの配信を確認します。 3.セッションデータのストレージと読み取りを確認します。 4.サーバーの構成を確認します。セッションIDとデータを出力し、セッションファイルのコンテンツを表示するなど、セッション関連の問題を効果的に診断して解決できます。

session_start()への複数の呼び出しにより、警告メッセージと可能なデータ上書きが行われます。 1)PHPは警告を発し、セッションが開始されたことを促します。 2)セッションデータの予期しない上書きを引き起こす可能性があります。 3)session_status()を使用してセッションステータスを確認して、繰り返しの呼び出しを避けます。

PHPでのセッションライフサイクルの構成は、session.gc_maxlifetimeとsession.cookie_lifetimeを設定することで達成できます。 1)session.gc_maxlifetimeサーバー側のセッションデータのサバイバル時間を制御します。 0に設定すると、ブラウザが閉じているとCookieが期限切れになります。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

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

SAP NetWeaver Server Adapter for Eclipse
Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

ホットトピック









