brhvitor6 14 Denunciar post Postado Agosto 9, 2012 Boa tarde pessoal, estou com o seguinte codigo: function Query($QueryString) { $query = mysql_query($QueryString); function NumRows() { return mysql_num_rows($query); } function FetchArray() { return mysql_fetch_array($query); } } E ele esta dentro de uma classe, como posso fazer para chamar dessa forma: classe->Query("query")->NumRows() ? Compartilhar este post Link para o post Compartilhar em outros sites
Evandro Oliveira 331 Denunciar post Postado Agosto 9, 2012 Você deve transformar o que hoje é uma função em uma classe. Assim, como você disse: classe->Query($query) retornaria uma instância dessa nova classe <?php class QueryStatement { private $resource; public function __construct($resource) { if (FALSE === strpos(get_resource_type($resource), 'mysql')) { throw new InvalidArgumentException("Invalid resource."); } $this->resource = $resource; } public function numRows() { return mysql_num_rows($this->resource); } public function fetchArray() { return mysql_fetch_array($this->resource); } } class Query { public static function runQuery($query) { return new QueryStatement(mysql_query($query)); } } mysql_connect('localhost','root','root'); print Query::runQuery('show databases;')->numRows(); Compartilhar este post Link para o post Compartilhar em outros sites
brhvitor6 14 Denunciar post Postado Agosto 9, 2012 Perfeito cara, muito obrigado Compartilhar este post Link para o post Compartilhar em outros sites