PHP数组将元素保存在变量中


PHP array save elements in variable

我有一个看起来像的数组

Array
(
    [0] => Array
        (
            [0] => <p>How can i get the firstName values from this array? its easy with
  print_r, <strong>but I want individual values</strong></p>
            [1] => How can i get the firstName values from this array? its easy with
  print_r, <strong>but I want individual values</strong>
        )
    [1] => Array
        (
            [0] => <p>You can do:</p>
            [1] => You can do:
        )
    [2] => Array
        (
            [0] => <p>Since your array contains objects eg <code>stdClass</code>, you need to use <code>-&gt;</code> like shown above.</p>
            [1] => Since your array contains objects eg <code>stdClass</code>, you need to use <code>-&gt;</code> like shown above.
        )
)

如何保存字符串变量中每个元素的[1]值。我想要的是

How can i get the firstName values from this array? its easy with
  print_r, <strong>but I want individual values</strong> You can do: Since your array contains objects eg <code>stdClass</code>, you need to use <code>-&gt;</code> like shown above.

更新:我一开始的数组是:

Array
(
    [0] => <p>try this</p>
<pre><code>foreach($x as $val)
{
echo $val-&gt;firstName;
}
</code></pre>
    [1] => <p>Since you have an array of objects, you can either access each object by the array index or loop through the array to get each seperate object.</p>
<p>Once you have the object it self, you can simply access the first name property of the object.</p>
<p>Example of looping:</p>
<pre><code>foreach ( $array as $object ) {
echo $object-&gt;firstname;
}
</code></pre>
<p>Where $array is the variable containing your array.</p>
<p>Example of accessing via array index:</p>
<pre><code>echo $array[0]-&gt;firstname;
</code></pre>
<p>OR </p>
<pre><code>$obj = $array[0];
echo $obj-&gt;firstname;
</code></pre>
    [2] => <p>Try this (assume <code>$a</code> is your array):</p>
<pre><code>echo $a[0]-&gt;firstname;
</code></pre>
    [3] => <blockquote>
  <p>How can i get the firstName values from this array? its easy with
  print_r, <strong>but I want individual values</strong></p>
</blockquote>
<p>You can do:</p>
<pre><code>foreach($yourArray as $val){
  echo $val-&gt;firstName;
}
</code></pre>
<p>Since your array contains objects eg <code>stdClass</code>, you need to use <code>-&gt;</code> like shown above.</p>
)

它被命名为answerstack,然后我使用:

for($j=0;$j<$answerscnt;$j++){
    preg_match_all("#<p>(.*?)</p>#is",$answerstack[$j],$matches,PREG_SET_ORDER);
    foreach($matches as $item){
        $answerstack[$j]=$item[1]." ";
    }
}

我想完成的是从第一个数组中删除<code>标签及其之间的文本,但我得到的是

Array
(
    [0] => try this 
    [1] => OR  
    [2] => Try this (assume <code>$a</code> is your array): 
    [3] => Since your array contains objects eg <code>stdClass</code>, you need to use <code>-&gt;</code> like shown above. 
)

看起来像是preg_match_all('#<p>(.*)</p>#sU')的结果,而您正试图删除所有<p>段落。

这是另一种方法:

$text = preg_replace('#<p>(.*)</p>#isU', ''1 ', $text);

以下是编辑后的问题的解决方案。此代码用一个空字符串替换所有<code>标签以及其间的所有内容:

// iterate over each element in $answerstack
foreach ($answerstack as &$text){
    // remove all '<code>' from $answerstack
    $text = preg_replace('#<code>(.*)</code>#isU', '', $text);
}
 $var = "";
 foreach($ext_array as $temp)
     $var .= $temp[1] . ' ';
foreach($your_array as $item){
    echo $item[1]." ";
}