Criar funcoes para usar em varios projetos Hola a todos Estou aos poucos conhecendo o framework, queria criar algumas funções que vão me servir para vários projetos, queria saber onde criar e como criar, qual seria a melhor forma, criar um arquivo php com vários funções ou um arquivo para cada função. Um abraço a todos. ...
NM
Criar funcoes para usar em varios projetos  
Hola a todos

Estou aos poucos conhecendo o framework, queria criar algumas funções que vão me servir para vários projetos, queria saber onde criar e como criar, qual seria a melhor forma, criar um arquivo php com vários funções ou um arquivo para cada função.

Um abraço a todos.

Curso Dominando o Adianti Framework

O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado!


Dominando o Adianti Framework Quero me inscrever agora!

Comentários (2)


LC

Eu fiz assim, dentro da pasta applibwidget
Criei um arquivo chamado Funcoes.class.php , e dentro deste arquivo coloquei todas as funções que preciso
Exemplo:
<?php/** * Funcoes.class [ HELPER ] * Classe para incluir funções! */class Funcoes{    /**     * method limpaPasta()     * Recebe uma pasta e a quantidade de dias para excluir os arquivos     * Não exclui arquivo <b>.htaccess</b>     * @param $param - Informar a pasta, ex.: 'app/output' ou 'tmp' ou 'pasta/subpasta/subsubpasta' não informar no parametro a ultima barra     * @param $d - Informar quantidade de dias que o arquivo esta na pasta      */    public static function limpaPasta( $param, $d = 1 )    {        if ( $param ):            if ( $handle = opendir( $param ) ):                //echo "Manipulador de diretório: $handle <br>";                //echo "Arquivos: <br>";                /* Esta é a forma correta de varrer o diretório */                while ( false !== ($file = readdir( $handle )) ):                    if ( $file != '.' && $file != '..' && $file != '.htaccess' && is_file( "{$param}/{$file}" ) ):                        $hj = new DateTime();                        //var_dump($hj);                        $dataarq = new DateTime( date( "Y-m-d", filemtime( "{$param}/{$file}" ) ) );                        //var_dump($dataarq);                        $intervalo = $hj->diff( $dataarq );                        //var_dump($intervalo);                        //echo "$file " . date ("d-m-Y H:i:s.", filemtime("{$param}/{$file}")) . " - Intervalo é de {$intervalo->days} dias <br>";                        // exclui o arquivo                        if ( $intervalo->days > $d ):                            if ( file_exists( "{$param}/{$file}" ) && is_file( "{$param}/{$file}" ) ):                                unlink( "{$param}/{$file}" );                            endif;                        endif;                    endif;                endwhile;                closedir( $handle );            endif;        endif;    }}?>


Forma de uso:
<?phpFuncoes::limpaPasta('app/output');?>

MG

Você também pode criar helpers, muito parecido com o Laravel.

Na pasta : app/lib você cair uma pasta chamada helpers.
Nesta pasta cria um arquivo, por exemplo, chamado heleprs.php com o conteúdo parecido com este:

<?php/*** Converte um numero para texto*/if (!function_exists('_num2txt')) {    /*    * Recebe uma string contendo textos e retorna apenas os números    * @param $string    * @return $string - contendo apenas numeros    */    function _num2txt($string)    {        return preg_replace("/\D/","", $string);    }}?>


No composer.json vc adiciona o helper para auto_loader:

"phpoffice/phpspreadsheet": "^1.5", "aws/aws-sdk-php": "^3.107" }, "autoload": { "files": [ "app/lib/mgsistemas/helpers/Helpers.php", ]


na linha de comando: composer dump-autoload

e é só usar

<?php    $num = _num2txt(10);?>


Caso dê o nome de uma função já existente, veja que no código do helpers.php ela não será sobrescrita.
Por isso sempre uso underline no começo dos meus helpers.