ホームページ  >  記事  >  バックエンド開発  >  PHP 学習ノート 2_PHP チュートリアル

PHP 学習ノート 2_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-21 15:32:32876ブラウズ

1. 配列
PHP の配列は実際には連想配列、またはハッシュ テーブルです。 PHP では、配列のサイズを事前に宣言する必要はなく、直接代入によって配列を作成できます。例:
//最も伝統的な方法は、数値をキーとして使用し、値を割り当てます
$state[0]="北京";
$state[2]="天津";
// キーが増加する数値の場合は、
$city[]="上海";
$city[]="天津";
$city[]="広州";
// を使用しますstring as key
$capital["China"]="Beijing";
array() を使用して配列を作成すると便利です。要素を配列のパラメーターとして追加することも、=> 演算子を使用して連想配列を作成することもできます。例:
$p=array(1,3,5,7);
$capital=array(“中国”=>“北京”, “日本=>東京”);
配列は実際には構文です。関数ではなく構造体です。配列と同様に、配列から値を抽出して複数の変数に値を割り当てるために使用できる list() もあります。例:
list($s,$t)= $city;
echo $s,' ',$t;
出力結果: 上海天津
list メソッドは数値でインデックス付けされた配列にのみ使用できることに注意してください
PHP には一般的に使用される配列処理関数が組み込まれています。詳細についてはマニュアルを参照してください。関数の例は次のとおりです。 count または sizeof は配列の長さを取得でき、array_merge は 2 つ以上の配列をマージでき、array_push (pop) は配列をスタックのように使用できます。コード

コードは次のとおりです:

< ;?php $state[0]="北京"; $state[1]="河北"; $city[]="上海";
$city["中国"]="北京"; ]="東京";
エコーカウント($city), '
'
$newarray=array_merge($city,$capital); $newarray as $elem)
echo $elem.'< br/& gt




上海
天津
広州
東京


2 . サポート: PHP のクラスの概念は、C# などの他のオブジェクト指向言語の概念と非常に似ており、例:


を使用して定義されます。
コードをコピーします

コードは次のとおりです:


class AuthUser {
protected $userName;
public function __construct($userName,$password) {
$this- >userName=$userName; $this-> ;password=$password;
}
public function GetUserName() {
return $userName;
if($) this->password==$old) { $this->password=$new; }else false を返す }
public function Login($password) {
return $this-> ;password==$password;
}
パブリック静的関数 CreateUser($userName,$password) {
$user=new AuthUser($userName,$password);
$user=AuthUser; ::CreateUser("Admin","123") ;
echo $user->GetUserName();
if($user->ChangePassword('abc', 'new'))
echo 'パスワード変更成功';
else
echo 'パスワードの変更に失敗しました';
$ user->ChangePassword("123", "321");
if($user->Login("321"))
echo "ログイン";
echo "Login failed";
?>


上記は役に立たないクラスですが、比較的完全な構文構造を持っています。まず、class キーワードを使用してクラスの名前を定義すると、内部的にフィールドとメソッドを定義できます。フィールドとメソッドの修飾子には、private、protected、public、final (メソッドのみ) を指定できます。その意味は他の言語と一致します。もはや。違いは、PHP が関数のオーバーロードをサポートしていないことです。なお、PHP5のコンストラクタの定義は__constructであり、接頭辞はアンダースコア2つです。 PHP4のコンストラクタの定義は他の言語の定義と一致しており、PHP5でもこの記述方法と互換性があります。 PHP5 は、__destruct という名前のデストラクターもサポートします。関数内で $this 変数を使用して、現在のオブジェクトへの参照を取得できます。 PHP は静的関数もサポートしており、静的関数も static キーワードを使用して変更されます。この例の最後の関数は静的関数です。静的関数は、クラスのインスタンスを通じて参照することはできません。
クラス定義 以下は、PHP が new キーワードを使用してクラスをインスタンス化するコード例です。オブジェクトのメソッドは -> 演算子を通じて参照されます。静的クラスの参照メソッドは:: であり、C++ と一貫性があることに注意してください。
以下は、次のクラスの継承について簡単に説明します。 extends キーワードは、Java と一貫性のあるクラス継承を実装するために PHP で使用されます:



コードをコピーします

コードは次のとおりです:

class BaseClass {
function __construct() {
print "In BaseClass コンストラクター";
}
}
class SubClass extends BaseClass {
function __construct() {
parent::__construct(); "サブクラス コンストラクター内";
}
}
$obj = new BaseClass();
$obj = new SubClass();>


出力結果は次のようになります。 PHP サブクラスのコンストラクターは、親クラスのコンストラクターを自動的に呼び出すことはなく、プログラム内で明示的に呼び出す必要があることに注意してください。親クラスへの参照を取得するには、parent キーワードを使用します。さらに、PHP 自体は弱い型付けであるため、「ポリモーフィズム」の概念は存在しなくなり、実際には常にポリモーフィックになります。
インターフェース
インターフェースはメソッドのセットを定義しますが、それらを実装するわけではありません。構文は次のとおりです。
interface IInterfaceName
{
//定数、関数定義
} このクラスは、implements キーワードを使用して、Java と一貫したインターフェイスを表面的に実装します。


コードをコピーします
コードは次のとおりです: interface IAddable{
function Add($something)
}
class AddClass は IAddable を実装します
{
private $data; ($num ){
$data=$num;
}
パブリック関数 Add($something)
{
$data+=$something;
}
}
$a=new AddClass (5);
echo $ ainstanceof IAddable;
echo $a->Add(10);


instanceof キーワードは、オブジェクトが特定のクラスのインスタンスであるかどうかを判断するために使用されます。その型にはインターフェイスが実装されている必要があります。



http://www.bkjia.com/PHPjc/322818.html
www.bkjia.com
tru​​e

http://www.bkjia.com/PHPjc/322818.html技術記事 1. 配列 PHP の配列は実際には連想配列、つまりハッシュ テーブルです。 PHP では、配列のサイズを事前に宣言する必要はなく、直接代入によって配列を作成できます。例: //最も人気のある...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:PHP Session_Regenerate_ID 関数の二重解放メモリ破損の脆弱性_PHP チュートリアル次の記事:PHP Session_Regenerate_ID 関数の二重解放メモリ破損の脆弱性_PHP チュートリアル

関連記事

続きを見る