本文整理汇总了PHP中Cron::load方法的典型用法代码示例。如果您正苦于以下问题:PHP Cron::load方法的具体用法?PHP Cron::load怎么用?PHP Cron::load使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Cron
的用法示例。
在下文中一共展示了Cron::load方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: gibbactuRaw
public function gibbactuRaw()
{
$crons = new Cron($this->db);
$cron = $crons->load(array('name = ?', 'gibbactu'));
//On va récupérer les messages :
$url = "http://forum.hardware.fr/forum2.php?post=177180&cat=5&config=hfr.inc&cache=&page=1&sondage=0&owntopic=0&word=GIBBACTU&firstnum=" . $cron->last_id . "¤tnum=0&filter=1";
//echo $url."<br/>";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$html = curl_exec($ch);
libxml_use_internal_errors(true);
$dom = new DOMDocument();
@$dom->loadHTML($html);
@($xpath = new DomXpath($dom));
$divsMessage = $xpath->query("//table[@class='messagetable']");
$newActus = array();
$last_id = $cron->last_id;
foreach ($divsMessage as $key => $node) {
$newActu = array();
//echo $dom->saveHTML($node);
//var_dump($xpath->query('.//td[@class = "messCase2"]//a[contains(@href, "profil-")]', $node)->item(0)->getAttribute('href')) ;
//Le contenu du message
$divActus = $xpath->query('.//div[starts-with(@id, "para")]', $node);
if (!$divActus->length) {
//c'est la pub, on skip
//echo "<< la pub\n";
continue;
}
//Check le smiley [:gibbactu]
$checkSmileyGA = $xpath->query('.//img[contains(@title, "[:gibbactu]")]', $node)->item(0);
if (!$checkSmileyGA) {
//pas de smiley, on skip
//echo "<< pas de smiley\n";
continue;
}
//le message est candidat à l'actu, on sauvegarde le contenu du message pour le post Process
$newActu['content_raw'] = $dom->saveHTML($node);
$newActus[] = $newActu;
//On enregistre l'ID du message pour le cron.
$divURL = $xpath->query('.//a[@class="cLink"]', $node);
$newActu['hfr_url'] = $divURL->item(0)->getAttribute('href');
$last_id = str_replace('t', '', parse_url($newActu['hfr_url'])['fragment']) + 1;
echo $last_id . "\n";
}
//Mise à jour du CRON avec le last_ID
$cron->date_last_executed = date('Y-m-d H:i:s');
$cron->last_id = $last_id;
$cron->save();
//On ajoute en les actus pour le PostProcess
$actu = new Actu($this->db);
foreach ($newActus as $actus) {
$actu->content_raw = $actus['content_raw'];
$actu->content_raw = $actus['content_raw'];
$actu->save();
$actu->reset();
}
libxml_use_internal_errors(false);
$this->f3->set('report', 'Actu(s) ajoutée(s) :' . count($newActus));
echo Template::instance()->render('cron.htm');
}