Jump to content

georgewar

Members
  • Content count

    69
  • Joined

  • Last visited

Community Reputation

1 Comum

About georgewar

  1. georgewar

    [Resolvido] retornar conteúdo de um arquivo como array

    já descobri: $arr = include aa.php; sou mt burro...
  2. Tenho um arquivo com o seguinte conteúdo: aa.php <?php return [ 'lang' => 'en', 'Text' => 'achou', ]; De um outro arquivo, preciso retornar o conteúdo para um array e acessar: echo $arr['lang']; Como faço?
  3. georgewar

    problema com return (array em arquivo) para array

    O merge não funciona para esse problema. Já resolvi o problema usando o próprio framework, mudando o algoritmo.
  4. Olá. Após alguns anos sem programar em PHP, parece que esse Corona fez algo de útil. Estou começando um trabalho novo, utilizando o recente CI 4 e me deparei com uma situação que preciso resolver com a ferramenta de language do framework. na documentação do CI, para implementar a ferramenta de tradução, deve-se guardar diferentes arquivos com os textos. Algo semelhante assim: /app/Language/en/teste.php <?php return [ 'oi' => 'hello', 'casa' => 'house', 'ele' => 'he', ]; Dai, para chamar basta eu fazer: echo lang(teste.oi); //printa "Hello" e isso está funcionando O problema que estou querendo mandar para um array TODO o return, que posteriormente vai ser passado para a view. Porém a bagaça não funciona, pois manda apenas parte do conteúdo de return para o array. Alguém sabe como mando esse return para um array? Com file() cria-se um índice inteiro para cada linha. Já com file_get_contents() a código abaixo simplesmente some: <?php return [ 'oi'
  5. georgewar

    preg_replace_callback e ob_start (bug?)

    Antes de mais nada é importante mencionar que o código abaixo está funcionando! Eu tenho um ob_flush aberto, que pega o conteúdo e manda para um callback. Dentro deste callback eu faço uma busca por expressões regulares por tags {$ [conteudo] } e substituo pelo texto na língua correta dentro de um segumento callback da função preg_replace_callback. A questão é o seguinte: veja que a tipagem do método substitui_texto é string, mas a função precisa retornar um array!!!!!! Diferente disso não funciona, e alguns erros também não são mostrados dentro deste último callback, mesmo com error = E_ALL!! Para sugestões e debate... //recebe os matchs da expressão regular do método flush_callback(), chama a função o mesmo número de vezes do match private function substitui_texto(array $matches): string { //precisa retornar um array (mas não aceita a tipagem da função?? problema PHP??) $a[0] = $this->arrLang[$matches[1]]; return $a[0]; } //antes de enviar o buffer para o navegador, o recebe para processamento private function flush_callback(string $buffer): string { //substitui as ocorrências de {$[conteudo]} pelo correspondente no array de tradução $pattern = '/\{\$(.*?)\}/'; $buffer = preg_replace_callback($pattern, "self::substitui_texto", $buffer); return $buffer; }
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.