Вставьте строку в массив - PullRequest
0 голосов
/ 01 февраля 2012

Как включить строку в массив?

emailconfig.php

$globalemail 'info@site.com'=>'site'";

Я хочу создать новый массив, подобный этому:

sendemail.php

include "emailconfig.php"
$fulllist=array('info@forum.com'=>'forum', '$globalemail');
// the Array MUST must appear above, ideally it would look like this
// $fulllist=array('info@forum.com'=>'forum', 'info@site.com'=>'site');

Это приводит к ошибке PHP из-за =>

Ответы [ 3 ]

2 голосов
/ 01 февраля 2012

Вы могли бы Но вы не должны использовать eval, чтобы сделать что-то вроде eval("array($yourstring)");.Но ты не должен.действительно.пожалуйста.

Вы можете делать всевозможные вещи, такие как preg-match или explode, но не могли бы вы проще найти источник этих фрагментов информации и поработать оттуда?

2 голосов
/ 01 февраля 2012

Один из способов: в вашем emailconfig.php должно быть 2 переменные, $globalemailkey и $globalemailvalue.

$globalemailkey = 'info@site.com';
$globalemailvalue = 'site';

$fulllist = array('info@forum.com'=>'forum', $globalemailkey => $globalemailvalue);

Или сохраните массив в emailconfig.php и используйте array_merge.

$globalemail = array('info@site.com' => 'site');

$fulllist = array('info@forum.com'=>'forum');
$fulllist = array_merge($fulllist, $globalemail);
2 голосов
/ 01 февраля 2012
$fulllist=array('info@forum.com'=>'forum');
$globalemail = "info@site.com'=>'site'";
$parts = explode('=>', $globalemail);
$fulllist[trim($parts[0], "'")] = trim($parts[1], "'");

http://ideone.com/mmvu9

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...