набор тортов :: экстракт - PullRequest
0 голосов
/ 03 мая 2011

Я знаю, что set: extract может получить один элемент из массива, подобного этому

Set :: extract ('/ myArray / item', $ items);

, но что если янужно несколько предметов?с идентификатором, мне тоже нужно имя.

Ответы [ 3 ]

1 голос
/ 03 мая 2011

Вы можете получить несколько элементов, используя Set::extract, но это зависит от структуры вашего массива и того, что вы хотите извлечь из этого массива.

Например, скажем, у нас есть что-то вроде ...

  • [Фрукты]
    • [Apples]
      • [Вашингтон]
      • [Sour]
    • [Апельсины]
    • [виноград]

Чтобы выбрать всех детей фруктов, введите Fruit. Чтобы получить определенные типы яблок, вы должны сделать /Fruits/Apple. Есть много других вещей, которые вы можете сделать. Перейдите к Синтаксис XPath для получения дополнительной информации. Надеюсь, это поможет.

0 голосов
/ 31 декабря 2011

Мои 2 цента: посмотрите на источники ($ CAKE_DIR / libs / set.php или онлайн и в $ CAKE_DIR / tests / case / libs / set.test.php или онлайн ): вы найдете несколько примеров использования (это верно, по крайней мере, для cakephp 1.2.x).

0 голосов
/ 03 мая 2011

У Феликса Гейзендёрфера из Debuggable есть несколько действительно превосходных примеров того, как использовать Set :: extract для получения нескольких значений из различных вложенных структур данных

http://debuggable.com/posts/cake-12s-set-class-eats-arrays-for-breakfast:480f4dd6-d084-4fb7-bacc-49fdcbdd56cb

...