Re: function within a class function

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 21 June 2010 00:45, Rick Pasotto <rick@xxxxxxxx> wrote:
> Within a class function I have defined another function for use with the
> usort() function. How do I reference it?
>
> When it's not part of a class usort($arr,"cmp") works fine but when it's
> within a class function I get this error:
>
> PHP Parse error:  syntax error, unexpected T_STRING, expecting T_FUNCTION
>
> Is it not in the scope of the class function?
>
> --
> "Memory is like an orgasm.  It's a lot better if you don't have to fake it."
>                -- Seymour Cray (on virtual memory)
>    Rick Pasotto    rick@xxxxxxxx    http://www.niof.net
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>

<?php
class foo {
 public $array = array(3,2,1);
 private function cmp($a, $b) {
  return $a === $b ? 0 : ($a < $b ? -1 : 1);
 }
 public function bar() {
  usort($this->array, array($this, 'cmp'));
 }
}

$baz = new foo();
$baz->bar();
print_r($baz->array);


or

<?php
class foo {
 public $array = array(3,2,1);
 public function bar() {
  usort($this->array, function($a, $b) {
   return $a === $b ? 0 : ($a < $b ? -1 : 1);
   });
 }
}

$baz = new foo();
$baz->bar();
print_r($baz->array);

if you have closures available to you.


-- 
-----
Richard Quadling
"Standing on the shoulders of some very clever giants!"
EE : http://www.experts-exchange.com/M_248814.html
EE4Free : http://www.experts-exchange.com/becomeAnExpert.jsp
Zend Certified Engineer : http://zend.com/zce.php?c=ZEND002498&r=213474731
ZOPA : http://uk.zopa.com/member/RQuadling

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php




[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux