本文整理汇总了PHP中preg_files函数的典型用法代码示例。如果您正苦于以下问题:PHP preg_files函数的具体用法?PHP preg_files怎么用?PHP preg_files使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了preg_files函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。
示例1: spiplistes_console_lit_log
function spiplistes_console_lit_log ($logname) {
$files = preg_files(defined('_DIR_TMP') ? _DIR_TMP : _DIR_SESSION, "$logname\.log(\.[0-9])?");
krsort($files);
$log = "";
foreach($files as $nom){
if (lire_fichier($nom, $contenu))
$log .= $contenu;
}
$contenu = explode("\n", $contenu);
$result = "";
$maxlines = 40;
while ($contenu && $maxlines){
$ii = trim(array_pop($contenu));
if(strlen($ii)) {
$result .= $ii."\n";
$maxlines--;
}
}
$result = "<pre style='margin-top:1em'>".$result."</pre>\n";
return($result);
}
开发者ID:rhertzog,项目名称:lcs,代码行数:26,代码来源:spiplistes_lire_console.php
示例2: ckeditor_install
function ckeditor_install($action,$prefix,$version_cible){
switch($action) {
case 'test':
$ckeditor = lire_config('ckeditor',false) ;
return is_array($ckeditor) ;
case 'install':
$formulaires = preg_files(_DIR_RACINE, "ckeditor-spip-plugin/formulaires/.*.php") ;
foreach($formulaires as $formulaire) {
spip_log("formulaire : $formulaire", "ckeditor");
if (preg_match("~formulaires/(ck[a-z]).php$~",$formulaire, $m)) {
include_spip("formulaires/".$m[1]);
$fonction = "formulaires_".$m[1]."_charger_dist" ;
$valeurs = $fonction() ;
$vals=array();
foreach($valeurs as $entree => $valeur) {
if (! is_null($valeur) && ! ($valeur === '')) {
ecrire_config("ckeditor/".$entree, $valeur) ;
$vals[]="ckeditor/$entree";
}
}
}
}
return true ;
default:
spip_log("installation[action:$action non prise en charge]", "ckeditor");
}
}
开发者ID:samszo,项目名称:open-edition,代码行数:27,代码来源:ckeditor_install.php
示例3: box_lister_skins
function box_lister_skins()
{
$skins = array('none' => array('nom' => _T('mediabox:label_aucun_style')));
$maxfiles = 1000;
$liste_fichiers = array();
$recurs = array();
foreach (creer_chemin() as $d) {
$f = $d . "colorbox/";
if (@is_dir($f)) {
$liste = preg_files($f, "colorbox[.]css\$", $maxfiles - count($liste_fichiers), $recurs);
foreach ($liste as $chemin) {
$nom = substr(dirname($chemin), strlen($f));
// ne prendre que les fichiers pas deja trouves
// car find_in_path prend le premier qu'il trouve,
// les autres sont donc masques
if (!isset($liste_fichiers[$nom])) {
$liste_fichiers[$nom] = $chemin;
}
}
}
}
foreach ($liste_fichiers as $short => $fullpath) {
$skins[$short] = array('nom' => basename($short));
if (file_exists($f = dirname($fullpath) . "/vignette.jpg")) {
$skins[$short]['img'] = $f;
}
}
return $skins;
}
开发者ID:xablen,项目名称:Semaine14_SPIP_test,代码行数:29,代码来源:configurer_mediabox.php
示例4: formulaires_restauration_cfg_charger_dist
function formulaires_restauration_cfg_charger_dist()
{
$fonds = array();
$pages_cfg = explode(':', _SARKASPIP_PAGES_CONFIG);
foreach ($pages_cfg as $_page) {
if ($_page != 'maintenance') {
$fond = "sarkaspip_{$_page}";
$fonds[$fond] = _T("sarkaspip:{$fond}");
}
}
$dir = sous_repertoire(_DIR_TMP, "cfg");
$saves = preg_files($dir, implode('|', array_flip($fonds)));
$options = '';
$groupe = '';
foreach ($saves as $_fichier) {
$nom = basename($_fichier);
$dirs = explode('/', dirname($_fichier));
$_dir = end($dirs);
if ($_dir != $groupe) {
if ($options) {
$options .= '</optgroup>';
}
$options .= '<optgroup style="font-weight: strong;" label="' . $fonds[$_dir] . '">';
$groupe = $_dir;
}
$options .= '<option value="' . $_fichier . '">' . $nom . '</option>';
}
if ($options) {
$options .= '</optgroup>';
}
$valeurs = array('_fichiers_sauvegardes' => $options);
return $valeurs;
}
开发者ID:jazzman346,项目名称:CAC_Site,代码行数:33,代码来源:restauration_cfg.php
示例5: liste_plugin_files
function liste_plugin_files($dir_plugins = null){
static $plugin_files=array();
if (is_null($dir_plugins)) {
$dir_plugins = _DIR_PLUGINS;
if (defined('_DIR_PLUGINS_SUPPL'))
$dir_plugins_suppl = array_filter(explode(':',_DIR_PLUGINS_SUPPL));
}
if (!isset($plugin_files[$dir_plugins])
OR count($plugin_files[$dir_plugins]) == 0){
$plugin_files[$dir_plugins] = array();
foreach (preg_files($dir_plugins, '/plugin[.]xml$') as $plugin) {
$plugin_files[$dir_plugins][] = substr(dirname($plugin),strlen($dir_plugins));
}
sort($plugin_files[$dir_plugins]);
// hack affreux pour avoir le bon chemin pour les repertoires
// supplementaires ; chemin calcule par rapport a _DIR_PLUGINS.
if (isset($dir_plugins_suppl)) {
foreach($dir_plugins_suppl as $suppl) {
foreach (preg_files(_DIR_RACINE.$suppl, 'plugin[.]xml$') as $plugin) {
$plugin_files[$dir_plugins][] = (_DIR_RACINE? '':'../').dirname($plugin);
}
}
}
}
return $plugin_files[$dir_plugins];
}
开发者ID:rhertzog,项目名称:lcs,代码行数:30,代码来源:plugin.php
示例6: liste_cfg
function liste_cfg($dir = '')
{
// Faire la liste des éléments qui ont un cfg ; ca peut etre des plugins
// mais aussi des squelettes ou n'importe quoi
$liste = array();
// tous les repertoires
if (!$dir) {
foreach (creer_chemin() as $dir) {
if (basename($dir) != 'cfg') {
$liste = array_merge($liste, preg_files($dir . 'fonds/', '/cfg_.*html$'));
}
}
// ou seulement celui demande
} else {
$dir = rtrim(rtrim($dir), '/') . '/';
$liste = preg_files($dir . 'fonds/', '/cfg_.*html$');
}
if ($liste) {
$l = array();
foreach ($liste as $cfg) {
$fonds = substr(basename($cfg, '.html'), 4);
$l[$fonds] = $cfg;
}
ksort($l);
return $l;
}
}
开发者ID:pcrest,项目名称:eludis,代码行数:27,代码来源:cfg.php
示例7: bases_referencees
function bases_referencees($exclu='')
{
$tables = array();
foreach(preg_files(_DIR_CONNECT, '.php$') as $f) {
if ($f != $exclu AND analyse_fichier_connection($f))
$tables[]= basename($f, '.php');
}
return $tables;
}
开发者ID:rhertzog,项目名称:lcs,代码行数:9,代码来源:install.php
示例8: skeleditor_files_editables
/**
* Lister les fichiers editables
*/
function skeleditor_files_editables($path=null){
if (is_null($path))
$path = skeleditor_path_editable();
if (!$path) return array();
$files_editable = preg_files($path,'[.]('._SE_EXTENSIONS.')$');
$files_editable = sort_directory_first($files_editable,$path); // utile ?
return $files_editable;
}
开发者ID:samszo,项目名称:open-edition,代码行数:13,代码来源:skeleditor.php
示例9: essais_tw_propre_typo
function essais_tw_propre_typo()
{
$tests = preg_files(_DIR_PLUGIN_TW . "tests/data/typo/", '\\.txt$');
$texte = $expected = "";
$essais = array();
foreach ($tests as $t) {
lire_fichier($t, $texte);
lire_fichier(substr($t, 0, -4) . ".html", $expected);
$essais[basename($t, ".txt")] = array($expected, $texte);
}
return $essais;
}
开发者ID:xablen,项目名称:Semaine14_SPIP_test,代码行数:12,代码来源:tw_propre_typo.php
示例10: cextras_types_formulaires
function cextras_types_formulaires(){
$types = array();
foreach(_chemin() as $dir) {
if (@is_dir($s = $dir.'extra-saisies/')) {
foreach(preg_files($s, '.*.html$') as $saisie) {
$type = basename($saisie,'.html');
$types[$type] = array(
'nom' => _T('cextras:type', array('type' => $type))
);
}
}
}
return $types;
}
开发者ID:rhertzog,项目名称:lcs,代码行数:15,代码来源:cextras_gerer.php
示例11: bank_lister_instal_prestas
/**
* Lister les install de presta
* @return array
*/
function bank_lister_instal_prestas()
{
$liste_prestas = array();
$recurs = array();
$maxfiles = 10000;
$dir = 'presta/';
// Parcourir le chemin
foreach (creer_chemin() as $d) {
$f = $d . $dir;
if (@is_dir($f)) {
$liste = preg_files($f, "/install[.]php\$", $maxfiles - count($liste_prestas), $recurs);
foreach ($liste as $chemin) {
$liste_prestas[] = dirname(substr($chemin, strlen($f)));
}
}
}
return $liste_prestas;
}
开发者ID:nursit,项目名称:bank,代码行数:22,代码来源:bank_administrations.php
示例12: sarkaspip_zengarden_activer_theme
function sarkaspip_zengarden_activer_theme($flux)
{
$dir = $flux['args']['dir'];
$action = $flux['args']['action'];
$dir_cfg = $dir . '/cfg';
$cfg = preg_files($dir_cfg);
include_spip('inc/config');
if ($action == 'activer') {
// On sauvegarde des valeurs actuelles pour un eventuel rappel
$dir_cfg = sous_repertoire(_DIR_TMP, "cfg");
$dir_cfg = sous_repertoire(_DIR_TMP, "themes");
$fonds = array();
foreach ($cfg as $_fichier_cfg) {
$fonds[] = basename($_fichier_cfg, '.txt');
}
include_spip('inc/sarkaspip_filtres');
$ok = sauvegarder_fonds($fonds, $dir_cfg, 'theme');
// On ecrit la nouvelle configuration n�cessaire au theme choisi
$flux['data'] = true;
foreach ($cfg as $_fichier_cfg) {
lire_fichier($_fichier_cfg, $tableau);
$fond = basename($_fichier_cfg, '.txt');
ecrire_config($fond, $tableau);
}
} else {
if ($action == 'effacer') {
$fichiers = array();
$flux['data'] = true;
foreach ($cfg as $_fichier_cfg) {
$fond = basename($_fichier_cfg, '.txt');
effacer_config($fond);
$fichiers[] = _DIR_TMP . 'themes/cfg/' . $fond . '.txt';
}
include_spip('inc/sarkaspip_filtres');
$ok = restaurer_fonds($fichiers);
} else {
// action apercevoir : on ne fait rien, on sait pas faire..
}
}
return $flux;
}
开发者ID:jazzman346,项目名称:CAC_Site,代码行数:41,代码来源:sarkaspip_pipelines.php
示例13: export_repertoire
function export_repertoire($meta, $val_meta)
{
list(, $archive, , $tables, $etape, $sous_etape, , $save) = $val_meta;
if (!function_exists('inc_export_' . ($save ? $save : 'xml'))) {
spip_log("fonction inc_export_$save indisponible");
return false;
}
$dir = base_dump_dir($meta);
// Reperer une situation anormale (echec reprise sur interruption)
if (($etape == 1) AND !$sous_etape) {
$file = $dir . $archive;
$l = preg_files($file . ".part_[0-9]+_[0-9]+");
if ($l) {
spip_log("menage d'une sauvegarde inachevee: " . join(',', $l));
foreach($l as $dummy) spip_unlink($dummy);
}
}
$all = count($tables);
return ($etape > $all OR !$all) ? false : $dir;
}
开发者ID:rhertzog,项目名称:lcs,代码行数:21,代码来源:export.php
示例14: afficher_raccourcis
function afficher_raccourcis($module = "public") {
global $spip_lang;
charger_langue($spip_lang, $module);
$tableau = $GLOBALS['i18n_' . $module . '_' . $spip_lang];
ksort($tableau);
$aff_nom_module= "";
if ($module != "public" AND $module != "local")
$aff_nom_module = "$module:";
echo "<div class='arial2'>"._T('module_texte_explicatif')."</div>";
echo "<div> </div>";
foreach (preg_files(repertoire_lang().$module.'_[a-z_]+\.php[3]?$') as $f)
if (preg_match(",^".$module."\_([a-z_]+)\.php[3]?$,", $f, $regs))
$langue_module[$regs[1]] = traduire_nom_langue($regs[1]);
if (isset($langue_module) && ($langue_module)) {
ksort($langue_module);
echo "<div class='arial2'>"._T('module_texte_traduction',
array('module' => $module));
echo " ".join(", ", $langue_module).".";
echo "</div><div> </div>";
}
echo debut_cadre_relief('',true,'','','raccourcis');
echo "\n<table class='spip' style='border:0;'>";
echo "\n<tr class='titrem'><th class='verdana1'>"._T('module_raccourci')."</th>\n<th class='verdana2'>"._T('module_texte_affiche')."</th></tr>\n";
$i = 0;
foreach ($tableau as $raccourci => $val) {
$bgcolor = alterner(++$i, 'row_even','row_odd');
echo "\n<tr class='$bgcolor'><td class='verdana2'><b><:$aff_nom_module$raccourci:></b></td>\n<td class='arial2'>".$val."</td></tr>";
}
echo "</table>",fin_cadre_relief(true);
}
开发者ID:rhertzog,项目名称:lcs,代码行数:39,代码来源:lang_raccourcis.php
示例15: bank_lister_prestas
/**
* Retourner la liste des prestataires connus
*/
function bank_lister_prestas()
{
static $prestas = null;
if (is_array($prestas)) {
return $prestas;
}
$prestas = array();
$regexp = "(abonnement|acte)\\.php\$";
foreach (creer_chemin() as $d) {
$f = $d . "presta/";
if (@is_dir($f)) {
$all = preg_files($f, $regexp);
foreach ($all as $a) {
$a = explode("/presta/", $a);
$a = end($a);
$a = explode("/", $a);
if (count($a) == 3 and $a[1] = "payer") {
$prestas[reset($a)] = true;
}
}
}
}
ksort($prestas);
// a la fin
foreach (array("cheque", "virement", "simu") as $m) {
if (isset($prestas[$m])) {
unset($prestas[$m]);
$prestas[$m] = true;
}
}
if (isset($prestas['gratuit'])) {
unset($prestas['gratuit']);
}
$prestas = array_keys($prestas);
return $prestas;
}
开发者ID:nursit,项目名称:bank,代码行数:39,代码来源:bank.php
示例16: ramasse_parties
function ramasse_parties($rub, $archive, $meta)
{
$dir = base_dump_dir($meta);
$files = preg_files($dir . $archive . ".part_[0-9]+_[0-9]+[.gz]?");
if (!$files) return false;
$ok = true;
$files_o = array();
$but = export_all_rename($archive, $dir);
// creer l'en tete du fichier
ecrire_fichier($but, export_entete(_VERSION_ARCHIVE),false);
foreach($files as $f) {
$contenu = "";
if (lire_fichier ($f, $contenu)) {
if (!ecrire_fichier($but,$contenu,false,false))
{ $ok = false; break;}
}
spip_unlink($f);
$files_o[]=$f;
}
ecrire_fichier($but, export_enpied(),false,false);
spip_unlink($dir);
spip_log("concatenation " . join(' ', $files_o));
return $ok ? $but : false;
}
开发者ID:rhertzog,项目名称:lcs,代码行数:24,代码来源:export_all.php
示例17: inc_pregfiles_to_array_dist
/**
* pregfiles -> tableau
* lister des fichiers a partir d'un dossier de base et selon une regexp.
* pour la syntaxe cf la fonction spip preg_files
* @param string $dir
* @param string $regexp
* @param int $limit
* @return array|bool
*/
function inc_pregfiles_to_array_dist($dir, $regexp = -1, $limit = 10000)
{
return (array) preg_files($dir, $regexp, $limit);
}
开发者ID:genma,项目名称:spip_ynh,代码行数:13,代码来源:data.php
示例18: actualiser_sessions
/**
* Mettre a jour les sessions existantes pour un auteur
* Quand on modifie une fiche auteur on appelle cette fonction qui va
* mettre a jour les fichiers de session de l'auteur en question.
* (auteurs identifies seulement)
*
* Ne concerne que les sessions des auteurs loges (id_auteur connu)
*
* @param array $auteur
* @param array $supprimer_cles
* Liste des clés à supprimer des tableaux de sessions
*/
function actualiser_sessions($auteur, $supprimer_cles = array())
{
$id_auteur = isset($auteur['id_auteur']) ? intval($auteur['id_auteur']) : 0;
$id_auteur_courant = isset($GLOBALS['visiteur_session']['id_auteur']) ? intval($GLOBALS['visiteur_session']['id_auteur']) : 0;
// si l'auteur est celui de la session courante, verifier/creer la session si besoin
$fichier_session_courante = "";
if ($id_auteur == $id_auteur_courant) {
ajouter_session($auteur);
if ($id_auteur) {
$fichier_session_courante = fichier_session('alea_ephemere');
}
}
// si session anonyme on ne fait rien d'autre ici : les sessions anonymes sont non partagees
if (!$id_auteur) {
return;
}
// memoriser l'auteur courant (celui qui modifie la fiche)
$sauve = $GLOBALS['visiteur_session'];
// .. mettre a jour les sessions de l'auteur cible
// attention au $ final pour ne pas risquer d'embarquer un .php.jeton temporaire
// cree par une ecriture concurente d'une session (fichier atomique temporaire)
$sessions = preg_files(_DIR_SESSIONS, '/' . $id_auteur . '_.*\\.php$');
// 1ere passe : lire et fusionner les sessions
foreach ($sessions as $session) {
$GLOBALS['visiteur_session'] = array();
// a pu etre supprime entre le preg initial et le moment ou l'on arrive la (concurrence)
if ($session !== $fichier_session_courante and @file_exists($session)) {
include $session;
# $GLOBALS['visiteur_session'] est alors l'auteur cible
$auteur = array_merge($GLOBALS['visiteur_session'], $auteur);
}
}
// supprimer les eventuelles cles dont on ne veut plus
foreach ($supprimer_cles as $cle) {
unset($auteur[$cle]);
}
$auteur_session = preparer_ecriture_session($auteur);
// seconde passe : ecrire les sessions qui ne sont pas a jour
foreach ($sessions as $session) {
$GLOBALS['visiteur_session'] = array();
// a pu etre supprime entre le preg initial et le moment ou l'on arrive la (concurrence)
if (@file_exists($session)) {
include $session;
# $GLOBALS['visiteur_session'] est alors l'auteur cible
// est-ce que cette session est a mettre a jour ?
if ($auteur_session != $GLOBALS['visiteur_session']) {
ecrire_fichier_session($session, $auteur);
}
}
}
if ($id_auteur == $id_auteur_courant) {
$GLOBALS['visiteur_session'] = $auteur;
$GLOBALS['auteur_session'] =& $GLOBALS['visiteur_session'];
} else {
// restaurer l'auteur courant
$GLOBALS['visiteur_session'] = $sauve;
}
}
开发者ID:JLuc,项目名称:SPIP,代码行数:70,代码来源:session.php
示例19: inc_joindre3_dist
function inc_joindre3_dist($path, $mode, $type, $id, $id_document,$hash, $redirect, &$actifs, $iframe_redirect)
{
if (!$path || strstr($path, '..')) return;
$upload = determine_upload();
if ($path != '/' AND $path != './') $upload .= $path;
if (!is_dir($upload))
// seul un fichier est demande
$files = array(array ('name' => basename($upload),
'tmp_name' => $upload)
);
else {
include_spip('inc/documents');
$files = array();
foreach (preg_files($upload) as $fichier) {
$files[]= array (
'name' => basename($fichier),
'tmp_name' => $fichier
);
}
}
return joindre_documents($files, $mode, $type, $id, $id_document, $hash, $redirect, $actifs, $iframe_redirect);
}
开发者ID:rhertzog,项目名称:lcs,代码行数:25,代码来源:joindre.php
示例20: valider_xml_ok
/**
* Vérifie le formatage d'un xml
*
* @see valider_resultats()
* @see valider_dir()
* @see valider_pseudo_url()
*
* @param string $url
* @param string $req_ext
* @param int $limit
* @param array|bool $rec
*
**/
function valider_xml_ok($url, $req_ext, $limit, $rec)
{
$url = urldecode($url);
$rec = !$rec ? false : array();
if (!$limit) {
$limit = 200;
}
$titre = _T('analyse_xml');
if (!$url) {
$url_aff = 'http://';
$onfocus = "this.value='';";
$texte = $bandeau = $err = '';
} else {
include_spip('inc/distant');
if (is_dir($url)) {
$dir = substr($url, -1, 1) === '/' ? $url : "{$url}/";
$ext = !preg_match('/^[.*\\w]+$/', $req_ext) ? 'php' : $req_ext;
$files = preg_files($dir, "{$ext}\$", $limit, $rec);
if (!$files and $ext !== 'html') {
$files = preg_files($dir, 'html$', $limit, $rec);
if ($files) {
$ext = 'html';
}
}
if ($files) {
$res = valider_dir($files, $ext, $url);
list($err, $res) = valider_resultats($res, $ext === 'html');
$err = ' (' . $err . '/' . count($files) . ')';
} else {
$res = _T('texte_vide');
$err = '';
}
$bandeau = $dir . '*' . $ext . $err;
} else {
if (preg_match('@^((?:[.]/)?[^?]*)[?]([0-9a-z_]+)=([^&]*)(.*)$@', $url, $r)) {
list(, $server, $dir, $script, $args) = $r;
if ((!$server or $server == './' or strpos($server, url_de_base()) === 0) and is_dir($dir)) {
$url = $script;
// Pour quand le validateur saura simuler
// une query-string...
// $args = preg_split('/&(amp;)?[a-z0-9_]+=/', $args);
$args = true;
}
} else {
$dir = 'exec';
$script = $url;
$args = true;
}
$transformer_xml = charger_fonction('valider', 'xml');
$onfocus = "this.value='" . addslashes($url) . "';";
if (preg_match(',^[a-z][0-9a-z_]*$,i', $url)) {
$res = $transformer_xml(charger_fonction($url, $dir), $args);
$url_aff = valider_pseudo_url($dir, $script);
} else {
$res = $transformer_xml(recuperer_page($url));
$url_aff = entites_html($url);
}
list($texte, $err) = emboite_texte($res);
if (!$err) {
$err = '<h3>' . _T('spip_conforme_dtd') . '</h3>';
}
$res = "<div style='text-align: center'>" . $err . "</div>" . "<div style='margin: 10px; text-align: left'>" . $texte . '</div>';
$bandeau = "<a href='{$url_aff}'>{$url}</a>";
}
}
$commencer_page = charger_fonction('commencer_page', 'inc');
$debut = $commencer_page($titre);
$jq = http_script("", 'jquery.js');
echo str_replace('<head>', "<head>{$jq}", $debut);
$onfocus = '<input type="text" size="70" value="' . $url_aff . '" name="var_url" id="var_url" onfocus="' . $onfocus . '" />';
$onfocus = generer_form_ecrire('valider_xml', $onfocus, " method='get'");
echo "<h1>", $titre, '<br>', $bandeau, '</h1>', "<div style='text-align: center'>", $onfocus, "</div>", $res, fin_page();
}
开发者ID:spip,项目名称:SPIP,代码行数:86,代码来源:valider_xml.php
注:本文中的preg_files函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论