1nn0
@1nn0
Системный администратор\Фрилансер

Почему строка не правильно генерируется?

Сразу скажу, в PHP я почти null. Суть проблемы:

Есть некий код умершего проекта. Не известно под какую версию написан. В коде есть строка:
$table->addPregReplace("/^(.*)$/u", "<a href=\"?menu_marker=si_staffedit&dn=\\1&sortcolumn=".$_GET['sortcolumn']."&sorttype=".$_GET['sorttype']."&name=".$Name."&bookmark_attr=".$bookmark_attr."&bookmark_name=".$BOOKMARK_NAME."&only_bookmark=".$only_bookmark.(($_GET['form_sent']||$_POST['form_sent'])?"&form_sent=1":"")."\" ><img border=\"0\" src=\"/skins/".$CURRENT_SKIN."/images/vcard.png\" width=\"48\" height=\"33\" title=\"Редактировать\"/></a>", "Править", 1, $Conditions1);


Ниже просили функцию, вот она:

function addPregReplace($Pattern, $Replacement, $Title, $Limit="-1", $Conditions=false)
                {
                $j=sizeof(@$this->PregReplace[$Title][pattern]);

                $this->PregReplace[$Title]['pattern'][$j]=$Pattern;
                $this->PregReplace[$Title]['replacement'][$j]=$Replacement;
                $this->PregReplace[$Title]['limit'][$j]=$Limit;
                $this->PregReplace[$Title]['apply'][$j]=true;

                if(is_array($Conditions))
                        {
                        foreach($Conditions as $key=>$value)
                                {
                                //echo"$key<br>";
                                if((is_array($this->Attributes['name']))?(in_array($key, $this->Attributes['name'])):false)
                                        {
                                        foreach($Conditions[$key] as $key1=>$value1)
                                                {
                                                //echo"$key1<br><br>";
                                                $this->PregReplace[$Title]['conditions'][$j][$key][$key1]=$value1;
                                                }
                                        }
                                }
                        unset($key, $key1, $value, $value1);
                        }
                }


В браузер приходит совсем другое:

<a title="Редактировать" height="33" width="48" src="/skins/default/images/vcard.png" тут кусок ссылки" > '<img border=" тут_тоже_кусочек_ссылки"" href="тут_еще_кусок_ссылки">' </a>


Помогите подправить, пожалуйста.

P.S.: Все это крутится на nginx 1.8 + PHP-fpm 5.5.9.
  • Вопрос задан
  • 153 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы