前回の記事では、「PHP の名前空間とは何ですか?」について紹介しました。名前空間を使用するにはどうすればよいですか? " に引き続き、この記事ではクラウド PHP の高度な構文雑文と、一定の参考価値のある try-catch の使い方を紹介します。困っている友人は参考にしてください。皆さんのお役に立てれば幸いです。
PHP 高度な構文 - その他および try-catch
1、関数
call_ user_ func
関数分析:
新しいファイルを作成し、その中に (関数) メソッドを定義します。コードは次のとおりです:
<?php function pome() { echo '我行过许多地方的桥,看过许多次数的云,喝过许多种类的酒,却只爱过一个正当最好年龄的人<br />'; } pome(); ?>
実行結果は次のとおりです。
今定義したメソッドを直接呼び出さない場合は、call_user_func 関数を使用できます。
<?php function pome() { echo '我行过许多地方的桥,看过许多次数的云,喝过许多种类的酒,却只爱过一个正当最好年龄的人<br />'; } call_user_func('pome'); ?>
実行結果は次のようになります。次のとおりです:
call_ user_ func_ array:
この関数に関しては、関数名、文字列、および for を記述する必要があります。 2 番目の関数名, 配列を記述する必要があります。パラメータがある場合は、すべてのパラメータを配列に配置する必要があります。コードは次のとおりです。
<?php function pome($a) { echo '我行过许多地方的桥,看过许多次数的云,喝过许多种类的酒,却只爱过一个正当最好年龄的人。'.$a.'<br />'; } //call_user_func('pome'); call_user_func_array('pome',['好喜欢这句话']); ?>
実行結果は次のとおりです:
spl_ autoload register: __autoload は、クラスの外にマジック メソッドが記述されている唯一のものです。
新しいファイルを作成します。そして、関数を定義します。自動ロード関数は、関数を自動的にロードする必要があります。このパラメータは、先ほど定義したクラス名に渡されます。作成時、現在のスクリプトにそのようなオブジェクトがない場合、自動的に呼び出されます。今回は、この関数を再度登録する必要があります。具体的なコードは次のとおりです:
<?php function myAutoload( $className ) { echo $className; //通过类名找到文件名,然后导入进来即可 } spl_autoload_register('myAutoload'); $love = new pome();
2. 定数と関連関数
##_NAMESPACE_ Current名前空間名_CLASS_ 現在のクラス名_METHOD_ 現在のメソッド名._instanceof_ Judgment - オブジェクト 現在のクラスに属していますか? vars クラスのすべての属性を取得しますget class オブジェクトに基づいて現在のクラス名を取得しますinterface contains インターフェイスが存在するかどうかを確認しますtrait が存在しますトレイトが存在するかどうかを確認します方法が存在します。
以上がPHP で高度な構文のその他と try-catch を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。