ホームページ > バックエンド開発 > PHPチュートリアル > コードの一部がわかりません。説明してください、ありがとう

コードの一部がわかりません。説明してください、ありがとう

WBOY
リリース: 2016-06-23 14:39:28
オリジナル
768 人が閲覧しました

コードの一部がわかりません。説明してください、ありがとうございます
次のコード
class foo {
var $bar = 'I am bar.' }

$foo = new foo ();
$bar = 'bar';
$baz = array('foo', 'bar', 'qux');
echo "{$foo->$bar}n"; echo "{$foo-> $baz[1]}n";
?>

出力結果:
I am bar.
質問 1: プログラム内で n 行の改行が使用されています。出力結果に改行がないのはなぜですか?:: 2: {$ foo-& gt; $ Bar} の出力は FOO の変数 bar を出力しますが、クラス foo は出力しません。 baz が含まれています、解決してください
ありがとうございます!


ディスカッションへの返信 (解決策)

<?phpclass foo {    var $bar = 'I am bar.';}$foo = new foo();$foo->$bar = "test\n";echo $foo->$bar;?>
ログイン後にコピー

<?PHPclass abc{	public static $i=0;	public static function out(){		echo self::$i;	}}echo abc::out();echo '<br>','<br>';abc::$i=3;echo abc::out();
ログイン後にコピー

1. n はテキストの改行です
は HTML の改行です

2. $baz[1] の値は bar ( $baz = array( 'foo', ' bar', 'baz', 'quux');)

実はあなたは $foo->$bar を理解していませんでした $bar のバーがたまたま同じ名前だっただけですクラス属性 bar として使用する

変数の変数を理解する それが真実です



$bar に価値がある場合は、オブジェクトを使用する必要があります。例えば
$foo->bar="??";

<?PHPclass foo {    public $bar = 'I am bar.';}$foo = new foo();$foo->bar = "test\n";echo $foo->bar;
ログイン後にコピー


ありがとうございます、分かりました

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート