Beuhhhh
 Groupe : Membres
|
Reprise du dernier message de la page précédente :
Auteur: Arnaud
Type: Astuce
But: Appeler une fonction d'une classe dans un callback
Code:
Code : PHP<?php
class test {
function next_year ($matches){
// comme d'habitude : $matches[0] représente la valeur totale
// $matches[1] représente la première parenthèse capturante
return $matches[1]. ($matches[2]+ 1);
}
function display ($chaine){
return preg_replace_callback('`(\d{2}/\d{2}/)(\d{4})`', array($this, 'nextyear'), $chaine);
}
}
?>
C'est sur le array($this,'nextyear') que tout repose.
Ceci n'est pas une signature
|
Beuhhhh
 Groupe : Membres
|
Auteur: Steven
Type: Fonction
But: Implode recursif
Code:
Code : PHP<?php
function implode_r ($string, $array){
foreach($array as $key => & $value){
if(is_array($value))
$value = implode_r ($string, $value);
}
return implode($string, $array);
}
?>
Exemple:
Code : PHP<?php
$array = array('test_1', array('test_2', 'test_3'), 'test_4', 'test_5');
// Essai de implode
echo implode('|', $array);
// Essai de implode_r
echo implode_r ('|', $array);
?>
Rendu:
Citationtest_1|Array|test_4|test_5
test_1|test_2|test_3|test_4|test_5
Ceci n'est pas une signature
|
Beuhhhh
 Groupe : Membres
|
Auteur: 6(sic)6
Type: Fonction
But: Obtenir un arbre des dossiers
Code:
Code : PHP<?php
function get_tree ($path = './'){
if (substr($path,- 1) !== '/')
$path .= '/';
$tree = '';
$dirs = glob($path. '*');
foreach ($dirs as $value){
if(is_dir($value))
$tree .= "\n". $value. '/'.get_tree ($value. '/');
}
return $tree;
}
?>
Exemple:
Code : PHP<?php
echo get_tree ('upload/');
?>
Rendu:
Citationupload/autres/
upload/images/
upload/pdf/
upload/pdf/fyg/
upload/pdf/ghu/
upload/pdf/ghu/se/
upload/pdf/ghu/yfg/
upload/pdf/ghu/yfg/ok/
upload/pdf/ok/
Ceci n'est pas une signature
|
Beuhhhh
 Groupe : Membres
|
Auteur: NeoZer0
Type: Astuce
But: La doc à porté de la main
Code a mettre dans le fichier php.src
- c:\Program Files\Mozilla Firefox\searchplugins pour windows
- /usr/share/firefox/searchplugins pour linux Mode root requit
Code:
Code : XML<search
name="Php.net"
description="Recherche sur la doc PHP"
method="GET"
action="http://fr.php.net/manual-lookup.php"
queryCharset="utf-8"
>
<input name="pattern" user>
<inputnext name="start" factor="10">
<inputprev>
</search>
Auteur: winzou
Citation : winzouMettez php.net dans les marques pages, avec comme mot clé "php" et comme adresse http://php.net/%s
Comme ca, quand vous tapez "php plop" dans la barre d'url, ca va directement sur http://php.net/plop
Ceci n'est pas une signature
|
Beuhhhh
 Groupe : Membres
|
Auteur: Pl00b
Type: Fonction
But: Remake des erreurs PHP
Code:
Code : PHP<?php
function trigger ($errno, $type, $line, $file){
echo '<h1>Erreur :<h1>
Une erreur de type <b>', $type, '</b> a été détécté.<br />
<b>Fichier :</b> ', $file, '<br />
<b>Ligne :</b> ', $line, '<br />
<b>Méthode de débuggage :</b> ';
if ($type === 'SQL')
echo 'Vérifiez vos requêtes SQL.<br />';
echo '<b>Message d\'erreur : </b> ', $errno;
die();
}
?>
Exemple:
Code : PHP<?php
$query = mysql_query("SELECT * FROM table_qui_existe_pas ORDER BY RAND()") OR trigger (mysql_error(), 'SQL', __LINE__, __FILE__);
?>
Rendu:
CitationErreur de type SQL détécté.
Fichier : C:\documents and settings\pl00b\bureau\test\includes\fonctions.php
Ligne : 5
Méthode de débuggage : Vérifiez vos requètes SQL.
Message d'erreur : La table 'bdd.table_qui_existe_pas' n'existe pas
Ceci n'est pas une signature
|
Beuhhhh
 Groupe : Membres
|
Auteur: Philias
Type: Astuce
But: Éviter d'avoir une ponctuation séparée du mot
Code:
Code : PHP<?php
function ponctuation ($texte){
return str_replace(
array(' ?', ' !', ' :', ' ;', 'M. ', 'Mme ', '« ', ' »', ' $', ' £', ' ¢', ' %', ' *', ' ²', ' ³'),
array(' ?', ' !', ' :', ' ;', 'M. ', 'Mme ', '« ', ' »', ' $', ' £', ' ¢', ' %', ' *', ' ²', ' ³'),
$texte
);
}
?>
Exemple:
Code : PHP<?php
$texte = '(À la fin d´une longue ligne) Et il me répondit : Ça n´est pas possible !
(longue ronde) « Mais qu´en faîtes vous ? »';
echo $texte;
echo nl2br("\n---\n");
echo ponctuation ($texte);
?>
Rendu:
Citation(À la fin d´une longue ligne) Et il me répondit
: Ça n'est pas possible !
(longue ronde) « Mais que faîtes vous ?
»
---
(À la fin d'une longue ligne) Et il me
répondit : Ça n'est pas possible !
(longue ronde) « Mais qu'en faîtes
vous ? »
Ceci n'est pas une signature
|