Разрезание многомерного PHP выстраивает через один из его элементов

В моем случае это была не библиотека, это были некоторые классы ..

Неопределенные символы для архитектуры x86_64: "_OBJC_CLASS _ $ _ ClassNmae", на которые ссылается: objc-class-ref in SomeClassName ".

d: символ не найден для архитектуры x86_64

clang: ошибка: команда компоновщика не удалась с кодом выхода 1 (используйте -v для просмотра вызова)

Решение У меня было несколько целей в Xcode с несколькими схемами (Production, Dev и т. д.). Некоторые из моих недавно добавленных реализаций (Class.m) отсутствовали в

Xcode-> Targets-> Build Phases-> Compile Sources

Поэтому мне пришлось добавить их вручную.

, тогда я смог бы скомпилировать и успешно выполнить сборку

21
задан Charles 21 March 2013 в 08:06
поделиться

4 ответа

Я проголосовал за ответ @Devon, потому что действительно нет способа сделать то, что Вы спрашиваете со встроенной функцией. Лучшее, которое можно сделать, записать собственное:

function array_column($array, $column)
{
    $ret = array();
    foreach ($array as $row) $ret[] = $row[$column];
    return $ret;
}
14
ответ дан pkyeck 29 November 2019 в 06:52
поделиться

Проще говоря, нет.

необходимо будет использовать цикл или функцию обратного вызова как array_walk.

5
ответ дан Devon 29 November 2019 в 06:52
поделиться

Я провел больше исследования на этом и нашел, что рубин и прототип оба имеют функцию, которая делает этот названный array_pluck, 2 . Интересно, что array_map имеет второе использование, которое позволяет Вам делать инверсию того, что я хочу сделать здесь. Я также нашел класс PHP , который кто-то пишет для эмуляции управления прототипами массивами.

я собираюсь сделать еще некоторое рытье вокруг и если я не нахожу ничто больше, что я буду работать над патчем, чтобы отправить списку рассылки internals@lists.php.net и видеть, добавят ли они array_pluck.

2
ответ дан gradbot 29 November 2019 в 06:52
поделиться

Я думаю, что это сделает то, что Вы хотите

array_uintersect_uassoc

, необходимо было бы сделать что-то вроде этого

$results = array(
    array('id' => 1, 'name' => 'red'  , 'spin' =>  1),
    array('id' => 2, 'name' => 'green', 'spin' => -1),
    array('id' => 3, 'name' => 'blue' , 'spin' => .5)
);
$name = array_uintersect_uassoc( $results, array('name' => 'value')  , 0, "cmpKey");
print_r($name);

//////////////////////////////////////////////////
// FUNCTIONS
//////////////////////////////////////////////////
function cmpKey($key1, $key2) {
  if ($key1 == $key2) {
    return 0;
  } else {
    return -1;
  }
}

Однако, у меня нет доступа к PHP5, таким образом, я не протестировал это.

0
ответ дан Bill 29 November 2019 в 06:52
поделиться
Другие вопросы по тегам:

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