本文整理汇总了PHP中RSS::nom_fichier_prof方法的典型用法代码示例。如果您正苦于以下问题:PHP RSS::nom_fichier_prof方法的具体用法?PHP RSS::nom_fichier_prof怎么用?PHP RSS::nom_fichier_prof使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类RSS
的用法示例。
在下文中一共展示了RSS::nom_fichier_prof方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: modifier_fichier_prof
/**
* Mettre à jour le fichier RSS d'un prof avec une demande d'évaluation d'élève.
*
* @param string $fichier_chemin
* @param string $titre
* @param string $texte
* @param string $guid
* @return void
*/
public static function modifier_fichier_prof($prof_id, $titre, $texte, $guid)
{
$fichier_nom = RSS::nom_fichier_prof($prof_id);
$fichier_chemin = CHEMIN_DOSSIER_RSS . $_SESSION['BASE'] . DS . $fichier_nom;
$fichier_url = URL_DIR_RSS . $_SESSION['BASE'] . '/' . $fichier_nom;
// S'il n'existe pas, en créer un vierge.
if (!file_exists($fichier_chemin)) {
RSS::creer_fichier($fichier_chemin, $fichier_url);
}
// Ajouter l'article
$date = date('r', $_SERVER['REQUEST_TIME']);
$fichier_contenu = file_get_contents($fichier_chemin);
$article = ' <item>' . "\r\n";
$article .= ' <title>' . html($titre) . '</title>' . "\r\n";
$article .= ' <link>' . URL_INSTALL_SACOCHE . '</link>' . "\r\n";
$article .= ' <description>' . html($texte) . '</description>' . "\r\n";
$article .= ' <pubDate>' . $date . '</pubDate>' . "\r\n";
$article .= ' <guid isPermaLink="false">' . $guid . '</guid>' . "\r\n";
$article .= ' </item>' . "\r\n\r\n";
$bad = ' </image>' . "\r\n\r\n";
$bon = ' </image>' . "\r\n\r\n" . $article;
$fichier_contenu = str_replace($bad, $bon, $fichier_contenu);
// Mettre à jour la date de reconstruction
$pbad = '#<lastBuildDate>(.*?)</lastBuildDate>#';
$pbon = '<lastBuildDate>' . $date . '</lastBuildDate>';
$fichier_contenu = preg_replace($pbad, $pbon, $fichier_contenu);
// Couper si le fichier est long (on le ramène à 100Ko) ; ça laisse encore environ 250 entrées dans le flux.
if (mb_strlen($fichier_contenu) > 120000) {
$pos = mb_strpos($fichier_contenu, '</item>', 100000);
$fichier_contenu = mb_substr($fichier_contenu, 0, $pos) . '</item>' . "\r\n\r\n" . '</channel>' . "\r\n" . '</rss>' . "\r\n";
}
// Enregistrer
FileSystem::ecrire_fichier($fichier_chemin, $fichier_contenu);
}