「PHP」の版間の差分

2,178 バイト追加 、 7 か月前
クラスの基礎
(クラスの基礎)
 
実行結果は、もし実行に成功すれば、webブラウザでのアクセス時に青い四角のアニメーション(始点の左から、右にむかってアニメーションします)が表示されます。
 
=== クラス ===
PHP にはクラスというものがあり、使い方は下記コードのように、変数などをまとめるものです。
 
<syntaxhighlight lang="PHP">
<?php
class sample
{
public $a;
public $b;
}
 
$dummy = new sample; // インスタンス
 
$dummy->a = 5;
$dummy->b = 31; // 本コードでは以降は不使用。参考用に記述
 
printf("%d\n", $dummy->a);
?>
</syntaxhighlight>
 
実行結果
<pre>
5
</pre>
 
public は、プログラミング用語でアクセス修飾子というものの一種です。public で修飾された要素は、クラス外部からアクセスできます。(C++やJavaに同様の「アクセス修飾子」という機能があり、似たような機能です。というか、C++やJavaのほうが実装が先で、それをあとからPHPが実装を真似ました。)
 
アクセス修飾子には、public のほか privat eがあります。private で修飾された要素は、そのクラス内部の他の要素からしかアクセスできなくなります。
 
PHP のクラスの定義では、要素にひとつずつ public か private かなどの指定をしないといけません。<code>public class</code> (※エラーになる)や <code>public {$a; $b}</code> (※エラーになる)などと宣言してもエラーになります。
 
<code>-></code> はアロー演算子というものです。C++などに同様の名前の演算子があります。PHP のクラスの利用でなぜアロー演算子を使うのかと言われても、そのように仕様が決まっているので、「そういう規則だから」としか言い様がありません。
 
 
;他の言語との相違点
C++ には「構造体」というクラスと似た機能がありますが、しかしPHPには「構造体」はありません。なお、構造体は標準C言語にもあります(またなお、標準C言語にクラス機能は無い)。
 
「クラス」と言われる機能はC++以降の新しい時代の他の多くのプログラミング言語にもありますが、しかしその機能はプログラミング言語ごとに差が大きいです。
 
[[Category:PHP|*]]
22,660

回編集