|
PHP com Suporte a Java
por Rogério Bourscheidt Kunkel
Devido ao fato de muitos amigos meus me perguntarem sobre o funcionamento da linguagem Java interpretada dentro do PHP resolvi escrever este pequeno artigo, que engloba alguns exemplos do suporte a Java do PHP.
|
A partir do PHP 4 temos um mecanismo simples para que possamos criar e chamar métodos de objetos Java do PHP. A Java Virtual Machine (JVM) é criada usando a Java Native Interface (JNI) e tudo é executado dentro do mesmo processo.
Existem diversas implementações com sucesso da Sun, IBM e Kaffe de Kits de Desenvolvimento para Java (JDKs).
Esta propriedade de suorte do PHP é muito interessante devido ao fato do aproveitamento de códigos providos de outras linguagens. Por exemplo, caso você tenha uma aplicação em Java e queira tornar a mesma aplicável ao formato PHP devido a problemas de velocidade, interpretador JDk no cliente ou outros você pode adaptar seu código com pequenos ajustes para que a mesma possa ser utilizada no ambiente PHP.
Sempre é bom lembrar que para se utilizar deste recurso você deve ter habilitada a dll do java no php.ini (extension=php_java.dll), retirando o ; do início do nome da dll.
O primeiro exemplo que segue mostra como acessar as propriedades de objetos Java:
<?php
//--------------------
//Exemplo 1
//Acesso de propriedades Java
//--------------------
$system = new Java("jva.lang.System");
print "Java version=" . $system->getProperty("java.version") . "<BR>\n";
print "Java vendor=" . $System->getProperty("java.vendor") . "<p>\n\n";
print "OS=" . $system->getProperty("os.name") . " ". // nome do sistema operacioanl
$system->getProperty("os.version") . " on ". // versão
$system->getProperty("os.arch") . "<BR>\n";
// formata a data
$formatter = new Java("java.text.SimpleDateFormat", "EEEE, MMMM dd, yyyy 'at' h:mm:ss a zzzz");
print $formatter->format(new Java("java.util.Date")) . "\n";
?>
|
No segundo exemplo vamos mostrar como usar a AWT para criar um botão:
<?php
//--------------------
//Exemplo 2
//processo para criação de botão através da AWT
//--------------------
$frame = new Java("java.awt.Frame", "Zend");
$button = new Java("java.awt.Button", "Oi mundo Java!");
$frame->add("North", $button);
$frame->validate();
$frame->pack();
$frame->visible = True;
$thread = new Java("java.lang.Thread");
$thread->sleep(10000);
$frame->dispose();
?>
|
É isso aí pessoal, no caso de qualquer dúvida basta enviar um comentário abaixo!
Abraços,
Rogério Bourscheidt Kunkel
|
|
|