Преобразуйте ассоциативный массив Perl в массив PHP - PullRequest
1 голос
/ 11 ноября 2010

Есть ли библиотека php, которую я могу использовать для преобразования ассоциативного массива в perl в ассоциативный массив в php?Если нет, есть ли рекомендуемый способ сделать это?Регулярные выражения ?Куча взрывов и взрывов звонков?

Я хочу перейти от

my %arrayname = (
    key1 => "Value1",
    key2 => "Value2",
    key3 => "Value3",
...

к

$arrayname = array(
        "key1" => "Value1",
        "key2" => "Value2",
        "key3" => "Value3",

1 Ответ

4 голосов
/ 11 ноября 2010

Если у вас есть Perl на вашем сервере, вы используете:

print 'Array(';
while (($key, $val) = each(%arrayname)) {
    print "'$key' => '$val',";
}
print ');';

Вы также можете взглянуть на пакет Perl PECL , эта библиотека интегрирует парсер Perl в PHP.

Вы можете использовать онлайновый интерпретатор Perl с примером кода и работой (в конце есть только одна лишняя запятая).

Я создал регулярное выражение, которое почти работает.Вы можете попробовать это, но это зависит от структуры массива Perl:

preg_match_all(#\%(.+)\s=|\n(.+).*#);

Пример данных:

my %arrayname = (
    key1 => "Value1",
    key2 => "Value2",
    key3 => "Value3"
)

Вы можете проверить это с помощью Средство тестирования регулярных выражений.

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