2016-11-07 14 views
1

我想通过传递到function.here取代“created_at”替换值是我的功能如何在JSON数组用PHP

public function getfeeds($showvalue){ 
     $stmt = $this->con->prepare("SELECT id,image,title,status,profilepic,created_at,url FROM news ORDER BY id DESC "); 
     $stmt->bind_param("s",$showvalue); 
     $stmt->execute(); 
     $result = $stmt->get_result(); 

     $nrow = array(); 
    while ($r = $result->fetch_assoc()) { 

     $nrow[] = $r; 
    } 
     $frow['news'] = $nrow; 
    $json = str_replace("\\/", "/",json_encode($frow)); 
    return $json; 

    } 

我想传递给一个函数来代替在创造价值converttime($time)

我的转换时间函数

function converttime($time, $full = false) { 
    $now = new DateTime; 
    $ago = new DateTime($time); 
    $diff = $now->diff($ago); 

    $diff->w = floor($diff->d/7); 
    $diff->d -= $diff->w * 7; 

    $string = array(
     'y' => 'year', 
     'm' => 'month', 
     'w' => 'week', 
     'd' => 'day', 
     'h' => 'hour', 
     'i' => 'minute', 
     's' => 'second', 
    ); 
    foreach ($string as $k => &$v) { 
     if ($diff->$k) { 
      $v = $diff->$k . ' ' . $v . ($diff->$k > 1 ? 's' : ''); 
     } else { 
      unset($string[$k]); 
     } 
    } 

    if (!$full) $string = array_slice($string, 0, 1); 
    return $string ? implode(', ', $string) . ' ago' : 'just now'; 
} 

请帮助我,我怎样才能将它转换

+0

所以你有一个功能,你知道你想要传递的价值......那么问题究竟是什么?调用函数并将所需的值传递给它。与此无关,您试图将值绑定到您的语句,但您的查询中没有任何参数。这将是一个问题。 –

+0

我想只提取created_在查询然后传递给一个转换函数,获取创建的新值,并将其传递给json编码 –

回答

0

让我们这个直...可变

  1. 呼叫功能:

    $varofcall = $this->converttime($param); 
    

  2. 使用var

    public function getfeeds($showvalue){ 
        $varofcall = $this->converttime(param); 
        $stmt = $this->con->prepare("SELECT id, image, title, status, profilepic, $varofcall ,url FROM news ORDER BY id DESC ");

它呢?

+0

我怎么能通过该值来转换时间之前选择查询值 –

+0

第一我想从sql查询中获取值并将该值传递给函数并获取新值 –

+0

Entendi acho que deve fazer isso depois do $ stmt = $ this-> con> –