Добрый день. Подскажите как вставить текст foreach в переменную и сделать str_replace? PHP: $query->result_array() //sql запрос // сейчас работает так: foreach ($query->result_array() as $item){ echo '<tr>' .'<td bgcolor="white">'.$item['wt'].'</td>' .'<td bgcolor="white">'.$item['Datetime'].'</td>' .'<td bgcolor="white">'.$item['name'].'</td>' .'</tr>'; } //такой foreach дает нужный мне результат, но нужно еще str_replace этой строки // делаю так: foreach ($query->result_array() as $item){ $result = '<tr>' .'<td bgcolor="white">'.$item['wt'].'</td>' .'<td bgcolor="white">'.$item['Datetime'].'</td>' .'<td bgcolor="white">'.$item['name'].'</td>' .'</tr>'; } $result = str_replace(".000",'',$result); echo $result; // выходит только последний перебор // как сделать что то типо: $result .= //строка в foreach
Кстати, мне нужно было там еще получить количество записей, я сделал так, это правильно?: PHP: $i = 0; foreach ($query->result_array() as $item){ echo '<tr>' .'<td bgcolor="white">'.$item['Wt_product'].'</td>' .'<td bgcolor="white">'.str_replace(".000",'',$item['DateTime']).'</td>' .'<td bgcolor="white">'.$item['name'].'</td>' .'</tr>'; $i++; } echo ';'.$i; потом сплитю в js эту точку с запятой Код (Javascript): data = data.split(';');
Понимаешь в чем суть? PHP: (new DateTime('2018-10-10 10:10:10.000'))->format('Y-m-d h:m:s'); https://php.ru/manual/function.count.html
@nospiou Суть в том что запись в базу делаю не я, я от туда только получаю данные, и мне десятые секунды не нужны =) Спасибо большое за помощь написал так: PHP: $i = count($query->result_array()); foreach ($query->result_array() as $item){ echo '<tr>' .'<td bgcolor="white">'.str_replace(".000",'',$item['Start_date']).'</td>' .'<td bgcolor="white">'.str_replace(".000",'',$item['End_date']).'</td>' .'<td bgcolor="white">'.$item['Why_problem'].'</td>' .'</tr>'; } echo ';'.$i; И да, это уже другой запрос
Вот вся моя функция, как мне не доставать оттуда .000 я не знаю : PHP: function get_wt(){ $oid = $this->input->post('oid'); $mid_date = $this->input->post('mid_date'); $max_date = $this->input->post('max_date'); $this->db->select('Wt_product, DateTime'); $this->db->select( '(select FIO from database2 where id = id) AS [name]'); $this->db->where('DateTime >= (SELECT DATEADD(hour, 7-'.$mid_date.', DATEDIFF(dd, 0, GETDATE())))'); $this->db->where('DateTime <= (SELECT DATEADD(hour, 19-'.$max_date.', DATEDIFF(dd, 0, GETDATE())))'); $this->db->where('TPa_ior', $oid); $this->db->order_by('DateTime','DESC'); $query = $this->db->get('database1'); $result = ""; $i = count($query->result_array()); foreach ($query->result_array() as $item){ $result .= '<tr>' .'<td bgcolor="white">'.$item['Wt_product'].'</td>' .'<td bgcolor="white">'.str_replace(".000",'',$item['DateTime']).'</td>' .'<td bgcolor="white">'.$item['name'].'</td>' .'</tr>'; } return $result .= ';'.$i; }