Termo pesquisado: Classe
Posts encontrados: 3
Code Completion no Netbeans com PHP
Postado em 01 de Agosto de 2010, às 21:49Olá pessoal, há muito tempo venho utilizando o Netbeans para programar em Java, mas, nunca o utilizei com PHP, mesmo sabendo que ele (o Netbeans) também podia ser utilizado para programar em PHP.
Eu trabalhava com o PHPEditor, ele é bem leve, simples e possui internamente a documentação da linguagem PHP, o que era muito útil. Mas, o editor era muito simplório e faz tempo que não é lançado atualizações para ele.
Sendo assim, resolvi migrar para o Netbeans, a migração é simples de ser feita, basta criar um novo projeto PHP com base em códigos fontes existentes. O Netbeans importa os códigos automaticamente e você já pode continuar a programar.
Não vou escrever aqui sobre todas as qualidades do Netbeans IDE, mas, posso dizer que é uma das melhores IDE's de desenvolvimento que existem atualmente. Mas, quero escrever sobre o code completion do Netbeans.
O PHPEditor, assim como o Netbeans, possui code completion, mas, se você está trabalhando com um framework como o CodeIgniter, por exemplo, o code completion não funciona muito bem.
Então eu pensei: deve haver algo que eu possa fazer para quando eu digitar "$this->load->" o code completion do Netbeans me mostrar todas as funções da classe CI_Loader.
Pesquisando na internet descobri o seguinte: se colocarmos nos comentários de cada classe do projeto um Class property variables (Variável de propriedades da classe, em tradução literal) o Netbeans será capaz de interpretar todas as funções que uma classe que faz parte do nosso projeto possui, por exemplo:
Notem que no comentário da classe eu coloquei a seguinte linha: @property CI_Loader $load, onde CI_Loader é uma classe do Core do CodeIgniter e $load é a variável que utilizamos para nos referir a esta classe dentro do nosso projeto.
Portanto, se eu digitar "$this->load->" o code completion do Netbeans irá me mostrar a lista de funções que a classe CI_Loader possui. O mesmo funciona para todas as outras funções do CI, vejam, por exemplo, a linha @property CI_Form_validation $form_validation que faz referência à classe CI_Form_validation do Core do CI.
Outra opção muito boa seria acrescentar a seguinte linha ao comentário da classe de um model: @property CI_DB_active_record $db. Com esta linha poderemos ter no code completion, uma lista de todas as funções do Active Record do CI ao digitar "$this->db->".
Assim a programação fica mais empolgante. Espero que este post ajude bastante quem gosta do Netbeans para programar em PHP. E quem ainda não experimentou o Netbeans, poderá tentar agora, garanto que vocês irão gostar.
Até mais pessoal, deixem suas dúvidas ou comentários, por favor.
CSS3 Funcionando no Internet Explorer
Postado em 09 de Julho de 2010, às 12:33Olá pessoal!
No post anterior eu escrevi um pouco sobre como podemos nos usufruir dos recursos do HTML5 no Internet Explorer, veja o post: HTML 5 Funcionando no Internet Explorer. Já neste post, escrevo um pouco sobre como aproveitar os novos recursos do CSS3 também no Internet Explorer nas versões 6, 7 e 8.
Todos sabemos que o Internet Explorer não acompanha com a mesma velocidade que seus concorrentes as tendências tecnológicas da web. Portanto, precisamos utilizar algumas "gambiarras" para fazer algo novo funcionar no Internet Explorer.
Existem três recursos do CSS3 que realmente valem a pena poder utilizar no IE, são eles: border-radius (a melhor das três), box-shadow e text-shadow.
Para conseguir essa façanha, precisamos utilizar um script que habilita o IE a renderizar estes efeitos. Eu encontrei esse script na web e geralmente ele se chama ie-css3.htc.
O que esse script faz? Ele utiliza uma linguagem de criação de imagens vetoriais específica do IE, o VML (Vector Markup Language). O VML foi o precursor do SVG e foi proposto para o W3C por um consórcio de empresas (Autodesk, Hewlett-Packard, Macromedia, Microsoft, e Visio) em 1998. Mas, somente a Microsoft o utiliza até hoje em seu browser.
Com o VML, o IE é capas de reproduzir efeitos que sua implementação do CSS não consegue.
Veja como é fácil usar:
Legal, não é mesmo? Pois bem, eu não inventei este post eu apenas o traduzi do seguinte site http://fetchak.com/ie-css3/. Neste mesmo site você pode ver a classe .box do CSS acima em funcionamento e ainda pode também baixar o arquivo ie-css3.htc.
Faça o teste usando o IE de qualquer uma das versões 1, 2 e 3. Eu testei aqui com IE8 e funcionou legal.
Até mais pessoal. Deixem comentários, por favor.
Personaliar Classe Pagination do CodeIgniter Para Obter a Página Atual
Postado em 15 de Fevereiro de 2010, às 14:33Pessoal, hoje eu estava programando em PHP (Meu passa tempo favorito!!) e resolvi atualiza a versão do framework que utilizo, o CodeIgniter (Esse eu recomendo), para a versão 1.7.2, pois eu ainda estava usando a versão 1.7.0. Enquanto atualizava, lembrei que, na classe Pagination da biblioteca do CodeIgniter existe um método que não é nativo, esse método foi implementado por mim mesmo para sanar uma de minhas necessidades com relação ao framework.
O método é bem simples e foi feito com base em trechos de código encontrados na própria classe Pagination. O nome do método é current_page(), sua única função é retornar o número da página que está sendo atualmente exibida.
Veja abaixo o código completo do método:
Quero explicar por que precisei deste método. Vamos supor que temos uma lista de produtos de uma loja sendo exibida no browser, e que esta lista possui 20 (vinte) páginas. Suponhamos agora que na página 10 (dez) existe um produto com o valor errado, portanto, precisaremos corrigi-lo, certo? Imaginemos então, que próximo à descrição do produto já exista um link chamado "Editar" para podermos editá-lo. Ao clicarmos neste link, iremos para outra página, certo? Sendo assim, editamos e salvamos as alterações no preço do produto.
Agora vem o problema, após salvar, o usuário deve ser redirecionado novamente para a lista de produtos (Isso pode ser feito automaticamente ou por meio de um botão disponibilizado na página de edição), mas, ao ser redirecionado, ele voltará para a página 1 (um). Isso tornaria o trabalho do usuário totalmente penoso, caso ele estvesse conferindo os preços de todos os produtos da sua lista. Imagine ter que procurar em qual página você estava após cada produto editado?
Portanto, com este método super prático eu busco o número da página atual e o envio para a página de edição de produtos, por exemplo. E lá na página de edição posso criar um link ou um botão "Voltar" ou ainda um redirecionamento automático para a lista de produtos, de forma que, ao voltar, o usuário seja levado diretamente à página em que estava antes de editar o produto.
Espero que o código acima possa ser útil para vocês tanto quanto é para mim. Até mais pessoal.