класс php, передавая переменную в функцию, ссылаясь на переменную - PullRequest
1 голос
/ 22 марта 2011

У меня есть класс, который извлекает каналы Twitter и объединяет их, они помещаются в массив, сортируются и объединяются. Затем мне нужно преобразовать «опубликованное» время из unix в человеческое.

В рамках моей классовой конструкции у меня есть:

function __construct($inputs) {     

             $this->inputs = $inputs;
             $this->mergeposts();
             $this->sortbypublished($this->allPosts,'published');
             $this->unixToHuman('problem here');
             $this->output();
     }

SortbyPublished is

        function sortbypublished(&$array, $key) {
$sorter=array();
$ret=array();
reset($array);
foreach ($array as $ii => $va) {
    $sorter[$ii]=$va[$key];
}
arsort($sorter);
foreach ($sorter as $ii => $va) {
    $ret[$ii]=$array[$ii];
}

    $this->sorted = $ret;

}

unixToHuman это:

public function unixToHuman($unixtime) {
            $posts['published'] =   date('Y-m-d H:i:s', $unixtime);
            }

Моя проблема в том, что я не могу понять, что мне нужно ввести:

$this->unixToHuman('HERE');

Я полагаю, что отчасти это происходит из-за моего непонимания терминологии PHP, из-за которой трудно найти что-либо в руководстве. Я пытаюсь сослаться на «опубликованный» массив?

Мне нужна правильная версия:

$this->sorted['published']

Я надеюсь, что это имеет смысл, любая помощь вообще, особенно с терминологией, которая высоко ценится.

Ответы [ 2 ]

1 голос
/ 22 марта 2011

Похоже, unixToHuman хочет метку времени. Таким образом, вы можете использовать date () или отметку времени, которое вы хотите преобразовать в удобочитаемое время.

$this->unixToHuman(date());
0 голосов
/ 22 марта 2011

Прежде всего, метод unixToHuman должен вернуть значение, поэтому давайте сделаем это:

public function unixToHuman($post) {
    $post['published'] =   date('Y-m-d H:i:s', $post['published']);
    return $post;
}

Затем мы можем передавать наши строки по одному в вашем __construct методе:

foreach ($this->sorted AS $idx => $row) {
    $this->sorted[$idx] = $this->unixToHuman($row);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...