数组,foreach,添加字符串到数组的麻烦

时间:2011-08-05 17:18:45

标签: php arrays string foreach

if ($_POST['op_ep_cat'] == 'op_single_ep') 
{
$ep_place = $_POST['the_place']; 
$eps_array = array();   
    array_push($eps_array, $ep_place); 
}

else if ($_POST['op_ep_cat'] == 'op_category') {
    $cat_site = $_POST['the_place'];    
    $taken_cat_site = file_get_contents($cat_site);

    if (preg_match_all('#<div class="content_ep"><a href="(.+?)"#si', $taken_cat_site, $eps_array));

    else if (preg_match_all('#<div class="postlist">\s*<a href="(.+?)"#si', $taken_cat_site, $eps_array));

}


foreach(array_reverse($eps_array[1]) as $eps_match)
{ 
     echo 'Arughh!';
}

上述内容适用于'op_category',但不适用于'op_single_ep' ...所以基本上$ep_place需要分开$eps_array[1],如果可能的话,不知何故..希望这一切都有意义!

我感谢任何帮助!

4 个答案:

答案 0 :(得分:1)

$eps_array[1]不是数组,是$eps_array的元素 你可以制作数组

$eps_array = array(1=>array());
array_push($eps_array[1], $ep_place); 

尝试阅读manual有关什么是数组

答案 1 :(得分:1)

试试

$eps_array = array(1 => array($_POST['the_place']));

但整个代码很奇怪

答案 2 :(得分:0)

$eps_array[0]版本为op_single_ep。请记住,PHP数组有基于0的索引。

答案 3 :(得分:-1)

试试这个

if ($_POST['op_ep_cat'] == 'op_single_ep') 
{
  $ep_place = $_POST['the_place'];  
  $eps_array = array();
  $eps_array[1] = array();
  array_push($eps_array[1], $ep_place); 
}