Articles of recursion

adições de teclas de matriz dinâmicas

Aqui está o meu precode … $keys = array(‘a’, ‘b’, ‘c’, ‘d’); $number = 10; E aqui está o meu código … eval(‘$array[\”.implode(‘\’][\”,$keys).’\’] = $number;’); Usando isso, recebo o seguinte resultado … Array ( [a] => Array ( [b] => Array ( [c] => Array ( [d] => 10 ) ) ) ) Agora, o […]

o que posso fazer para otimizar a seguinte function ou alguma outra coisa para reduzir o consumo de memory?

Estou trabalhando no diretório de negócios, e preciso mostrar pais recursivos de categorias na listview de categorias. Estou usando a seguinte function para isso: public function get_recursive_parents($category_id){ $categories = array(); $res = $this->db->from(‘categories’)->where(‘cat_id’,$category_id)->get()->row_array(); $cat_id = $res[‘parent_id’]; $categories[] = $res; while($cat_id){ $res = $this->db->from(‘categories’)->where(‘cat_id’,$cat_id)->get()->row_array(); $categories[] = $res; $cat_id = $res[‘parent_id’]; } return $categories; } Eu estou […]

O PHP atravessa categoria de tree de subcategoria categoria em uma matriz 2D personalizada

Eu tenho uma matriz para filhos pai semelhante a esta: Array ( [0] => Array ( [category_id] => 1 [category_name] => Casa e Jardim [parent_id] => 0 [nível] => 1 ) [1] => Array ( [category_id] => 2 [category_name] => Cozinha e Jantar [parent_id] => 1 [nível] => 2 ) [2] => Array ( [category_id] […]

PHP Como calculo o nível de chamadas aninhadas na function recursiva?

Eu tenho uma function recursiva no php que obtém de um database uma tree de pastas. Cada pasta tem um id, um nome e um ID pai. function show_subfolders($parent=0, $indent=0) { $indent++; $folders = sql_to_assoc(“SELECT * FROM `folders` WHERE ‘parent’ = “.$parent.”;”); foreach($folders as $folder) { echo ‘ ‘.$folder[‘naam’].’ ‘; show_subfolders($folder[‘id’], $indent); } } show_subfolders(); […]

Fusionando arrays recursivamente PHP

Estou usando esta function duas mesclagens redutoras recursivas: function array_merge_recursive_distinct(array &$array1, array &$array2) { $merged = $array1; foreach($array2 as $key => &$value) { if(is_array($value) && isset($merged[$key]) && is_array($merged[$key])) { $merged[$key] = array_merge_recursive_distinct($merged[$key], $value); } else { $merged[$key] = $value; } } return $merged; } Para usar esta function, estou fazendo as seguintes etapas: Declare uma […]

Como desmarcar elementos usando array_walk_recursive

Eu preciso desarmar elementos de arrays que estão nesteds em outra matriz, de forma que somente os primeiros N elementos seriam mantidos ( N sendo predefinido). Somente os elementos que têm um índice numérico devem ser afetados. Matriz de input: Array ( [0] => Array ( [a] => ‘w’ [b] => Array ( [0]=> ‘x’ […]

criar menu de navegação recursiva php

Para criar um menu de navegação dynamic, executei a consulta select `category_id`,`category_name`,`parent_category_id`,`sort_order` from `item_category` e recebo o resultado Array ( [0] => Array ( [category_id] => 9 [category_name] => cat1 [parent_category_id] => 0 [sort_order] => 0 ) [1] => Array ( [category_id] => 11 [category_name] => cat3 [parent_category_id] => 0 [sort_order] => 0 ) [2] […]

Expressão regular do limite de palavras a menos que a tag HTML interna

Eu tenho uma expressão regular usando limites de palavras que funcionam muito bem … ~\b(‘.$value.’)\b~i … salve o fato de que ele combina texto dentro de tags HTML (ou seja, title=”This is blue!” ). É um problema porque estou fazendo substituição de texto em qualquer coisa que o regex corresponda e, em seguida, crie dicas […]

Recursão usando PHP Simple DOM Parser

Por algum motivo eu recebo uma recursion enquanto uso Simple DOM Parser Library. Meu HTML é como some text Some text link 15 Some text link 25 Eu criei um script PHP, incluí um arquivo único include_once(‘simple_html_dom.php’); E eu tento obter 15 e 25 valores do HTML acima. Mas quando eu corro $ret = $html->find(‘div[id=root]’); […]

DELETE PostgreSQL recursivo

Eu tenho uma tabela upload_temp como segue: CREATE TABLE upload_temp ( codigo serial PRIMARY KEY NOT NULL, codigo_upload_temp_pai INTEGER, nome TEXT NOT NULL, codigo_extensao INTEGER, data_inclusao TIMESTAMP NOT NULL DEFAULT NOW(), codigo_usuario_inclusao INTEGER NOT NULL, CONSTRAINT fk_upload_upload_pai FOREIGN KEY (codigo_upload_temp_pai) REFERENCES upload_temp (codigo) MATCH SIMPLE ON UPDATE CASCADE ON DELETE CASCADE, CONSTRAINT fk_extensao_upload FOREIGN KEY […]