次のエディタでは、PHP の二重引用符で配列要素にアクセスするときのエラーの解決策を紹介します。これは参考になるので、皆さんのお役に立てれば幸いです。エディターをフォローして見てみましょう。
私は現在、グラフィックスとテキストを送信するための WeChat パブリック アカウントを開発しています。配列要素を XML 文字列に結合する必要があります。
foreach ($itemArr as $key => $value){ $items .= "<item> <Title><![CDATA[$value['title']]]></Title> <Description><![CDATA[[$value['description']]]></Description> <PicUrl><![CDATA[$value['picUrl']]]></PicUrl> <Url><![CDATA[$value['url']]]></Url> </item>"; }
結果は次のエラー メッセージでした:
Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in D:\hhp\wamp\www\weixin\wx_sample.php on line 146
$arr = array('fruit' => 'apple', 'veggie' => 'carrot'); // This will not work, and will result in a parse error, such as: // Parse error: parse error, expecting T_STRING' or T_VARIABLE' or T_NUM_STRING' // This of course applies to using superglobals in strings as well print "Hello $arr['fruit']"; print "Hello $_GET['foo']";
インデックス文字列の記述方法は、この時点では、インデックスが指定されている配列要素を取得することを意味します。ストリングフルーツと出力リンゴ。
インデックス文字列を記述する 2 番目の方法は、引用符を追加せず、同時に配列変数を中かっこ { } で囲みます。 、fruit 実際には文字列ではなく定数を表すため、fruit 定数値をインデックスとする配列要素を取得することになります。定数 Fruit の値は veggie なので、キャロットが出力されます。3 番目の書き方
# は、一重引用符を追加するだけでなく、配列変数を中括弧 { } で囲んで文字列を引用することです。このように、文字列フルーツをインデックスとする配列要素を取得したい場合は、apple を出力します。後で検索を続けたところ、次のコードが見つかりました:
$arr = array('fruit' => 'apple', 'veggie' => 'carrot'); // This defines a constant to demonstrate what's going on. The value 'veggie' // is assigned to a constant named fruit. define('fruit', 'veggie'); // The following is okay, as it's inside a string. Constants are not looked for// within strings, so no E_NOTICE occurs hereprint "Hello $arr[fruit]"; // Hello apple// With one exception: braces surrounding arrays within strings allows constants// to be interpretedprint "Hello {$arr[fruit]}"; // Hello carrotprint "Hello {$arr['fruit']}"; // Hello apple $arr = array('fruit' => 'apple', 'veggie' => 'carrot'); // This defines a constant to demonstrate what's going on. The value 'veggie' // is assigned to a constant named fruit. define('fruit', 'veggie'); // The following is okay, as it's inside a string. Constants are not looked for // within strings, so no E_NOTICE occurs here print "Hello $arr[fruit]"; // Hello apple // With one exception: braces surrounding arrays within strings allows constants // to be interpreted print "Hello {$arr[fruit]}"; // Hello carrot print "Hello {$arr['fruit']}"; // Hello apple
##// Incorrect. This works but also throws a PHP error of level E_NOTICE because
// of an undefined constant named fruit
//
// Notice: Use of undefined constant fruit - assumed 'fruit' in...
print $arr[fruit]; // apple
<pre name="code" class="php">print $arr['fruit']; // apple
結論:
1. 配列変数が二重引用符で囲まれていない場合、
(1) 一重引用符で囲まれたインデックス文字列は文字列自体を表します。 ##// This defines a constant to demonstrate what's going on. The value 'veggie'// is assigned to a constant named fruit.define('fruit', 'veggie');// Notice the difference nowprint $arr[fruit]; // carrot
print $arr['fruit']; // apple
<pre name="code" class="php">$arr['fruit']
2. 配列変数を二重引用符で囲んだ場合、
( 1) 一重引用符のないインデックス文字列は文字列自体を表します
$arr[fruit]
(2) 中括弧で囲まれた配列変数は文字列と同じ名前の定数を表します
"$arr[fruit]"
"{$arr[fruit]}"
<pre name="code" class="php"><pre name="code" class="php">"{$arr['fruit']}"
添付ファイル: PHP マニュアル配列の説明 URL
http ://php.net/manual/zh/ language.types.array. php
上記の記事は、PHP の二重引用符で配列要素にアクセスするときのエラーの解決策に基づいています。これがすべての共有内容です。編集者によるこの記事が参考になれば幸いです。また、PHP 中国語 Web サイトをサポートしていただければ幸いです。
#興味があるかもしれない記事:php 1 次元配列の値要素を削除する方法 php ヒント
PHP は画像の逆色処理機能を実現します php スキル ##phppecl メソッドによる拡張機能のインストール例で php スキルを説明します
以上がPHP の二重引用符で配列要素にアクセスするときのエラーの解決策 PHP スキルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。