2015-05-28 5 views
0

У меня есть следующий код. Выходы $ Результатов массива как такphp массивы, временные метки и циклы

[1] => stdClass Object ([ID] => 4429 [post_date_gmt] => 2015-03-05 11:04:18)

Во втором цикле я вычисление разности между сегодняшним временем и постдатировать. Правильные результаты возвращаются в инструкции IF, однако для получения здесь я потерял ID из исходного массива $results. Мне нужно изменить значение в базе данных на основе идентификатора, если $difference < 72

Итак, вопрос в том, можно ли перейти к инструкции IF при сохранении идентификатора и post_date_gmt вместе?

<?php 
global $wpdb; 
$results = $wpdb->get_results(
"SELECT ID, post_date_gmt 
FROM wp_posts 
WHERE post_type = 'job_listing'" 
); 
print_r($results); 
$jobids = array(); 
$jobdates = array(); 
foreach($results as $oneitem) { 
    $jobids[]=$oneitem->ID; 
    $jobdates[]=$oneitem->post_date_gmt; 
} 

foreach($jobdates as $value) { 
    $postdate = $value; 
    $today = time(); 
    $postdate = strtotime($postdate); 
    //echo $postdate; 
    $difference = round(abs($today-$postdate)/60/60); 
    if($difference < 72) { 
     echo $difference; 
     //change a value in the database where the id matches the id from the $results array 
    } 
} 
?> 

Спасибо за любые предложения!

ответ

0

Когда вы строите свои массивы, почему бы не использовать идентификатор задания в качестве ключа для массива jobdates?

foreach($results as $oneitem) { 
    $jobdates[$oneitem->ID]=$oneitem->post_date_gmt; 
} 

Тогда при вызове этого массива для второго цикла Еогеаспа, вызовите ключ, а foreach($jobdates as $key => $value) и он будет доступен для использования и правильно ассоциирован.

+0

Спасибо @GeoffAtkins. Значит, $ key будет ID? –

+0

@IanButler - Правильно. Вы используете ключ массива для переноса идентификатора. Просто слово предупреждения, это будет работать, только если идентификаторы уникальны, поскольку ключи массива должны быть уникальными. Если у вас есть повторяющиеся идентификаторы, вам нужно создать многомерный массив для переноса идентификаторов и дат работы вместе. –

Смежные вопросы