ホームページ  >  記事  >  バックエンド開発  >  PHP でよくある間違い

PHP でよくある間違い

小云云
小云云オリジナル
2018-03-29 15:34:521221ブラウズ

この記事では、日常生活で PHP を使用する際によくある間違いを中心にまとめましたので、皆様のお役に立てれば幸いです。

1 引用された質問

<?php$arr = range(1,3);foreach ($arr as &$v){
}


print_r($arr);foreach ($arr as $v){
    print_r($arr);

}

PHP でよくある間違い

2 変数が設定されているかどうかを検出します

<?php$data = array();//$data[&#39;name&#39;]  = 0;//$data[&#39;name&#39;]  = null;$data[&#39;name&#39;] = false;if (isset($data[&#39;name&#39;])) {
    var_dump(&#39;not set name&#39;);
} else {
    var_dump(&#39;already set name&#39;);

}if (($data[&#39;name&#39;])) {
    var_dump(&#39;data-name 存在&#39;);
} else {
    var_dump(&#39;data-name 不存在&#39;);

}if (array_key_exists(&#39;name&#39;, $data)) {
    var_dump(&#39;key name 存在于array中&#39;);
} else {
    var_dump(&#39;key name 不存在于array中&#39;);

}

3 つの値、変数が存在するかどうかを判断する 3 つのメソッドの結果は次のとおりです:
PHP でよくある間違い
PHP でよくある間違い

PHP でよくある間違い

3 直接使用データインデックスを返す関数

<?phpclass Config{
    private $values = [];    public function __construct() {
        // 使用数组对象而不是数组
        // $this->values = new ArrayObject();
    }    public function &getValues() {
        return $this->values;
    }
}$config = new Config();$config->getValues()[&#39;test&#39;] = &#39;test&#39;;echo $config->getValues()[&#39;test&#39;];

値を格納するためにオブジェクトを使用していない場合、または関数の結果を値の配列への参照に変換する参照を使用していない場合、それは間違っている可能性があります

Notice: Undefined index: test in /Users/leon/Documents/workspace/test/php7.php on line 20

これはオブジェクトのカプセル化を破壊します。このように書くのが最善です

rree

以上がPHP でよくある間違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。