Вывести содержимое массива и его ключ в PHP - PullRequest
1 голос
/ 05 февраля 2011

поэтому в настоящее время у меня есть функция PHP, которая распечатывает конфигурацию приложения:

function cconfig() {
global $config;
// If the user wants debug information shown:
if (SHOWDEBUG == true) {
    // If there is config information to show
    if (isset($config)) {
        cout("Variable $config is set.", "debug");
        foreach ($config as $current) {
            echo $current."<br/>";
        }
    } else {
        cout("Variable &#36;config isn't set.", "debug");
    }
}

}

Выходные данные показывают только те значения массива, в которых он находится $current. Например:

Value1
Value2
Value3

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

ConfigEntry1 = Value1
ConfigEntry2 = Value2
ConfigEntry3 = Value3

Ответы [ 3 ]

4 голосов
/ 05 февраля 2011
foreach ($config as $key => $current) {
    echo "$key = $current<br />";
}
3 голосов
/ 05 февраля 2011

Выставь ключ вот так:

foreach ($config as $k => $v) {
    echo $k. ' ' . $v ."<br/>";
}

Две формы, которые может принимать foreach, из руководства :

foreach (array_expression as $value)
    statement
foreach (array_expression as $key => $value)
    statement

Первая форма зацикливается на массиве определяется массивом На каждой цикл, значение текущего элемента присваивается значение $ и внутренний указатель массива увеличивается на единицу (так на следующем цикле вы будете смотреть на следующий элемент).

Вторая форма делает то же самое, за исключением того, что ключ текущего элемента будет назначена переменная $ key на каждой петле.

0 голосов
/ 05 февраля 2011

Изменение:

foreach ($config as $current) {
        echo $current."<br/>";
    }

на

foreach ($config as $key => $val) {
        echo $key." = " . $val . "<br/>";
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...