Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1124 connectés 

 


Pour ou contre du changement sur le topic ?


 
35.7 %
 5 votes
1.  Oui, faq / bonnes pratiques + blabla@php
 
 
0.0 %
        0 vote
2.  Oui, blabla@php uniquement
 
 
7.1 %
 1 vote
3.  Ce topic mérite la poubelle. Pauvre poubelle
 
 
21.4 %
 3 votes
4.  Non, ce topic reste tel quel
 
 
35.7 %
 5 votes
5.  Obiwan n'aime pas le php
 

Total : 16 votes (2 votes blancs)
Ce sondage est clos, vous ne pouvez plus voter
 Mot :   Pseudo :  
  Aller à la page :
 
 Page :   1  2  3  4  5  ..  59  60  61  ..  64  65  66  67  68  69
Auteur Sujet :

blabla@php | faq et bonnes pratiques page 1

n°2191211
masklinn
í dag viðrar vel til loftárása
Posté le 21-05-2013 à 21:19:18  profilanswer
 

Reprise du message précédent :

Alekusu2 a écrit :

J'ai la mauvaise manie d'utiliser toujours des "SELECT *" et donc de ne pas spécifier les colonnes que je veux.

 

Je voudrais savoir en terme de perf, pour des tables de 10/20 colonnes, à partir de combien de row affichés, on peut sentir une différence entre un Select all et un Select précis ?


Ça dépend de ton "select précis" (si tu sélectionnes tous les champs...), et de la liaison entre application et BDD (socket unix, localhost, réseau local, internet, IPoAC). Ah et probablement de la db, de la table, de l'utilisation ou non d'index (index-only scan[0]), etc...

 

[0] MSSQL sait même ajouter des colonnes non-indexées à un index, pour pouvoir faire de l'index-only scan avec des colonnes qui font pas partie de l'index.


Message édité par masklinn le 21-05-2013 à 21:21:24

---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
mood
Publicité
Posté le 21-05-2013 à 21:19:18  profilanswer
 

n°2191214
Alekusu2
Posté le 21-05-2013 à 21:35:47  profilanswer
 

avec MySQL et la diffférence entre afficher 1 seule colonne et 10 par exemple, à connexion équivalente et tout équivalent pour le reste


---------------
Ils ne sont grands que parce que nous sommes à genoux. - Topic Kingdom
n°2192126
masklinn
í dag viðrar vel til loftárása
Posté le 29-05-2013 à 16:43:54  profilanswer
 

[:reddit]

php > echo json_encode(array("1" => 1));
{"1":1}
php > echo json_encode(array("0" => 1));
[1]


PHP [:jar jar]
trick:


php > $ob = new stdClass;
php > $ob->{0} = 1;
php > echo json_encode($ob);
{"0":1}


ou bien

php > echo json_encode((object)array("0" => 1));
{"0":1}

Message cité 1 fois
Message édité par masklinn le 29-05-2013 à 16:45:42

---------------
I mean, true, a cancer will probably destroy its host organism. But what about the cells whose mutations allow them to think outside the box by throwing away the limits imposed by overbearing genetic regulations? Isn't that a good thing?
n°2192164
ratibus
Posté le 29-05-2013 à 20:59:37  profilanswer
 

masklinn a écrit :

[:reddit]

php > echo json_encode(array("1" => 1));
{"1":1}
php > echo json_encode(array("0" => 1));
[1]


PHP [:jar jar]
trick:


php > $ob = new stdClass;
php > $ob->{0} = 1;
php > echo json_encode($ob);
{"0":1}


ou bien

php > echo json_encode((object)array("0" => 1));
{"0":1}



Je vois rien de choquant quand on connait le traitement des tableaux PHP (tes doubles quotes sur les clés numériques ne servent pas)

n°2192514
Alekusu2
Posté le 02-06-2013 à 07:09:22  profilanswer
 

Hello,
 
Je cherche à générer du PHP sans qu'il soit interprété.
 
En gros avoir un script un peu comme ça :

Code :
  1. <?php
  2. ob_start();
  3. $var = "Hello World";
  4. $contenu = ob_get_contents();
  5. ob_end_clean();
  6. file_put_contents("test.php", $contenu);
  7. ?>


qui ferait qu'ensuite quand j'ouvre le fichier test.php, j'ai ça :  
 

Code :
  1. $var = "Hello World";


 
Et que si je fais ensuite dans un autre fichier :
 

Code :
  1. include ("test.php" );
  2. echo $var;


 
et bien ça m'affiche "Hello World".
 
Une idée ? (sans passer par les questions "à quoi ça sert ?" :D)


Message édité par Alekusu2 le 02-06-2013 à 07:14:07

---------------
Ils ne sont grands que parce que nous sommes à genoux. - Topic Kingdom
n°2192517
Alekusu2
Posté le 02-06-2013 à 09:23:45  profilanswer
 

Ma partie 1 n'output rien en effet ! C'est pour ça que je demande conseil ! ;)


Message édité par Alekusu2 le 02-06-2013 à 09:24:39

---------------
Ils ne sont grands que parce que nous sommes à genoux. - Topic Kingdom
n°2192521
Alekusu2
Posté le 02-06-2013 à 10:20:34  profilanswer
 

Merci ! J'avais pas pensé à faire comme ça :jap:


---------------
Ils ne sont grands que parce que nous sommes à genoux. - Topic Kingdom
n°2192555
Alekusu2
Posté le 02-06-2013 à 21:50:07  profilanswer
 

Hello,
 
J'ai un problème tout con, en gros l'idée de la fonction c'est de prendre un text dans lequel il y a une sorte de BBCODE du type [P=#ID#], par exemple [P=123], 123 correspondant à une ID de page et le but est de remplacer ce code par les infos de la page pour mettre en place un lien. (+ d'autres features plus évoluées, mais quand j'aurais réglé mon souci, le reste sera facile)
 
Donc mon idée c'était :
 
1/ dans une boucle identifier chaque fois que le pattern est exprimé
2/ récupéré l'ID
3/ aller chercher dans la base les infos + générer l'URL puis faire le replace.
 
Mon souci c'est de récupérer l'ID.  
 
En fait je ne sais pas comment récupérer le contenu de $1 avant que preg_replace fasse son boulot.  
 

Code :
  1. function convertID($text)
  2. {
  3. $pattern = '#\[P=([0-9]*)\]#';
  4. while(preg_match($pattern, $text))
  5. {
  6.                 //requete SQL avec where id = $1
  7.                 //$replacement = '<a href="_INFOS_" title="_INFOS_">_INFOS_</a>';
  8.  $text = preg_replace($pattern, $replacement, $text, 1);
  9. }
  10. return $text;
  11. }


 
Donc voilà je bloque sur la partie " //requete SQL avec where id = $1" vu que je ne sais pas comment récupérer le $1 :(
 
Si une âme charitable passait par là :p


---------------
Ils ne sont grands que parce que nous sommes à genoux. - Topic Kingdom
n°2192556
Ydalb
In Crêpes n' Cidre I Trust!
Posté le 02-06-2013 à 21:53:37  profilanswer
 

Regarde la doc php, preg_match accepte un troisième paramètre qui t'aidera ;)


---------------
:o
n°2192558
Alekusu2
Posté le 02-06-2013 à 22:17:06  profilanswer
 

Ydalb a écrit :

Regarde la doc php, preg_match accepte un troisième paramètre qui t'aidera ;)


 
 [:mister yoda]  
 
Merci ! J'ai passé 1H sur cette page en plus, et j'ai raté un truc tellement voyant !!!
Merci beaucoup :love:
 


---------------
Ils ne sont grands que parce que nous sommes à genoux. - Topic Kingdom
mood
Publicité
Posté le 02-06-2013 à 22:17:06  profilanswer
 

n°2193106
skeye
Posté le 06-06-2013 à 13:37:49  profilanswer
 

[:spam]


---------------
Can't buy what I want because it's free -
n°2193124
drasche
Posté le 06-06-2013 à 13:50:39  profilanswer
 

T'as même pas averti les modérateurs, j'ai dû le faire [:sadnoir]


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
n°2193126
skeye
Posté le 06-06-2013 à 13:51:33  profilanswer
 

drasche a écrit :

T'as même pas averti les modérateurs, j'ai dû le faire [:sadnoir]


si, j'avais fait. Peut-être sur l'autre post.:D


---------------
Can't buy what I want because it's free -
n°2193129
drasche
Posté le 06-06-2013 à 13:52:49  profilanswer
 

Ah ouais j'ai vu :D


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
n°2193138
TheCreator
zwiiiii and then shbrouk tak
Posté le 06-06-2013 à 14:00:16  profilanswer
 

c'est du spam poli en tout cas :o


---------------
La superstition c'est comme ceux qui réparent les fauteuils, il faut que le bois qu'ils rajoutent soit à peu près comme l'autre bois sinon ça se voit trop.
n°2193626
Profil sup​primé
Posté le 10-06-2013 à 19:44:21  answer
 

Bonsoir,
 
J'ai une question à propos d'APC.
Pour mon serveur web j'utilise lighttpd + plusieurs processus php-cgi spawn en parallèle. (6 processus en fait).
Est-ce que la mémoire APC est partagée entre les 6 ?
Ou bien est ce qu'elle est gérée séparément pour chaque ?
Et pour le cache user ?
Parce que si tout est bien partagé je pense faire mon propre cache avec APC pour mybb plutôt que d'avoir à installer memcached en + (memcached est supporté nativement par mybb)
 
Merci

n°2193865
Profil sup​primé
Posté le 11-06-2013 à 21:39:17  answer
 

Je suis toujours intéressé par la réponse, bien que j'ai déjà écrit le cache handler APC et qu'il fonctionne. J'ai l'impression que le cache est bien partagé mais peut être est-il dupliqué... J'ai pas mal de mémoire sur la machine mais quand même, 6*128 ça ferait 0.75 GiB juste pour PHP...
Je vais essayer de voir combien de mémoire ils me bouffent

n°2194768
Alekusu2
Posté le 18-06-2013 à 18:06:20  profilanswer
 

Pour modifier en série des fichiers qui contiennent au début une zone à modifier délimité par des caractéres spéciaux, le mieux est d'ouvrir chaque fichier, mettre tout le contenu dans une variable puis appliquer un preg_replace ?  
 
Ou alors y a une méthode plus rapide/simple/efficace ?


---------------
Ils ne sont grands que parce que nous sommes à genoux. - Topic Kingdom
n°2194795
ratibus
Posté le 18-06-2013 à 20:50:10  profilanswer
 

Alekusu2 a écrit :

Pour modifier en série des fichiers qui contiennent au début une zone à modifier délimité par des caractéres spéciaux, le mieux est d'ouvrir chaque fichier, mettre tout le contenu dans une variable puis appliquer un preg_replace ?

 

Ou alors y a une méthode plus rapide/simple/efficace ?


sed

n°2194867
Profil sup​primé
Posté le 19-06-2013 à 11:23:21  answer
 

Je re up pour APC : Ma réponse est con ou mal posée ? :o  

n°2194869
flo850
moi je
Posté le 19-06-2013 à 11:31:18  profilanswer
 

Pour moi c'est un cache par serveur, il n'y a pas de duplication


---------------

n°2194875
Profil sup​primé
Posté le 19-06-2013 à 11:54:47  answer
 

flo850 a écrit :

Pour moi c'est un cache par serveur, il n'y a pas de duplication


ok merci :jap:
du coup ça me fait un cache super léger :love:

n°2198206
Volkhen
Posté le 20-07-2013 à 15:44:32  profilanswer
 


http://translate.google.fr/#auto/f [...] 20or%20PDO

Citation :

L'extension mysql est obsolète et sera supprimée dans l'avenir: utiliser mysqli ou PDO


---------------
Main/Alt1/Alt2/Alt3
n°2198211
Profil sup​primé
Posté le 20-07-2013 à 16:10:41  answer
 

ok donc je remplace ça:

Code :
  1. $cx_srv= mysql_connect($serveur,$utilisateur,$motdepasse);


 
par ça:

Code :
  1. $cx_srv= mysqli_connect($serveur,$utilisateur,$motdepasse);


 
?
Merci


Message édité par Profil supprimé le 20-07-2013 à 16:11:16
n°2198350
Profil sup​primé
Posté le 22-07-2013 à 20:30:17  answer
 


merci :)

n°2198352
Profil sup​primé
Posté le 22-07-2013 à 21:12:34  answer
 

Quand on ajoute des donnés, on doit bien utiliser cette syntaxe?
Merci

Code :
  1. exec("INSERT INTO [...] VALUES (...)" );


Message édité par Profil supprimé le 22-07-2013 à 21:24:42
n°2198565
koskoz
They see me trollin they hatin
Posté le 24-07-2013 à 09:31:44  profilanswer
 

Problème Symfony2 :

 

J'ai un formulaire avec deux select (deux choice field donc). Le second se rempli en Ajax (appel à un contrôler qui renvoie des données en JSON) par rapport à la valeur sélectionnée du premier.

 

A la construction du formulaire mon second choice field est initialisé avec un array vide.

 

Aucun soucis pour remplir en AJAX le second choice field, le problème se situe à la validation.
J'intercepte le formulaire avec un PRE_SUBMIT event où je supprime mon choice field initialement vide et où je le recréé avec les valeurs injectées en AJAX.

 

Le problème est que la validation ne passe toujours pas, le champs modifié (stores) retourne une erreur de valeurs non permises.

 
Code :
  1. <?php
  2.  
  3. namespace Foo\BarBundle\Form\Type;
  4.  
  5. use Symfony\Component\Form\AbstractType;
  6. use Symfony\Component\Form\FormBuilderInterface;
  7. use Symfony\Component\Form\FormEvent;
  8. use Symfony\Component\Form\FormEvents;
  9. use Symfony\Component\OptionsResolver\OptionsResolverInterface;
  10.  
  11. class BarFormType extends AbstractType
  12. {
  13.    public function buildForm(FormBuilderInterface $builder, array $options)
  14.    {
  15.        // other fields
  16.  
  17.        // This field is filled in ajax
  18.        $builder->add('stores', 'choice', array(
  19.            'label' => 'form.label.stores',
  20.            'translation_domain' => 'FooBarBundle',
  21.            'choices' => $options['storesList'],
  22.            'required' => false,
  23.            'multiple' => true,
  24.            'auto_initialize' => false,
  25.            'attr' => array(
  26.                'class' => 'chzn-select',
  27.                'placeholder' => 'form.placeholder.stores'
  28.        )));
  29.  
  30.        $func = function (FormEvent $e) use ($options) {
  31.            $data = $e->getData();
  32.            $form = $e->getForm();
  33.            if ($form->has('stores')) {
  34.                $form->remove('stores');
  35.            }
  36.  
  37.            $brand = isset($data['brand']) ? $data['brand'] : null;
  38.  
  39.            if ($brand !== null) {
  40.                $choices = $options['miscRepo']->getStoresNameIndexedById($brand);
  41.                $choices = array_keys($choices);
  42.                $choices = array_map('strval', $choices);
  43.            } else {
  44.                $choices = array();
  45.            }
  46.  
  47.            $form->add('stores', 'choice', array('choices' => $choices, 'multiple' => true, 'attr' => array('class' => 'chzn-select')));
  48.        };
  49.  
  50.        $builder->addEventListener(FormEvents::PRE_SUBMIT, $func);
  51.    }
  52.  
  53.    public function getName()
  54.    {
  55.        return 'bar_form_campaign';
  56.    }
  57.  
  58.    public function setDefaultOptions(OptionsResolverInterface $resolver)
  59.    {
  60.        $resolver->setRequired(array(
  61.            'storesList',
  62.            'miscRepo',
  63.        ));
  64.    }
  65. }


Message édité par koskoz le 24-07-2013 à 09:34:30

---------------
Twitter
n°2198688
Alekusu2
Posté le 25-07-2013 à 01:12:27  profilanswer
 

Petite question : existe-t-il en PHP une fonction toute faite qui vérifie si un élément d'une chaine est contenu dans un Array.
 
Par exemple :
 
$str = "Sur HFR je trouve des supers réponses !";
$array = Array("HFR","LeMonde","Obiwan" );
 
Donc vérifier si $str contient un des éléments contenus dans $array.
 
in_array permet de vérifier si la chaine entière est contenue, mais pas un élément de la chaine.
 
Il y a une variante qui fait ça ?
 
Merki !
 
(L'idée étant bien sur d'éviter de devoir exploser ma chaine $str pour chercher ensuite mot par mot ou inversement, éviter de devoir faire un foreach sur le array, je cherche une fonction qui fait ça de base)


Message édité par Alekusu2 le 25-07-2013 à 01:16:45

---------------
Ils ne sont grands que parce que nous sommes à genoux. - Topic Kingdom
n°2198691
skeye
Posté le 25-07-2013 à 07:16:12  profilanswer
 

c'est quoi le soucis de explode + array_intersect?


---------------
Can't buy what I want because it's free -
n°2198713
Alekusu2
Posté le 25-07-2013 à 11:33:14  profilanswer
 


 
Yes c'est ce que j'ai fait finalement en utilisant le count du str_replace.  
C'es le truc qui me semble le mieux en terme de perf.


---------------
Ils ne sont grands que parce que nous sommes à genoux. - Topic Kingdom
n°2198718
Alekusu2
Posté le 25-07-2013 à 12:00:10  profilanswer
 

skeye a écrit :

c'est quoi le soucis de explode + array_intersect?


 
Je pars du principe (peut-être faux j'ai la flemme de faire un benchmark :D) que niveau perf c'est pas terrible.
Mais je me trompe peut-être :p


---------------
Ils ne sont grands que parce que nous sommes à genoux. - Topic Kingdom
n°2198721
skeye
Posté le 25-07-2013 à 12:17:17  profilanswer
 

Alekusu2 a écrit :


 
Je pars du principe (peut-être faux j'ai la flemme de faire un benchmark :D) que niveau perf c'est pas terrible.
Mais je me trompe peut-être :p


premature optimization is the root of all evil.:o


---------------
Can't buy what I want because it's free -
n°2199779
koskoz
They see me trollin they hatin
Posté le 09-08-2013 à 09:41:34  profilanswer
 

Quelqu'un utilise PHPBrew ? Je trouve pas les .so pour faire pointer Apache dessus [:tinostar]


---------------
Twitter
n°2199780
koskoz
They see me trollin they hatin
Posté le 09-08-2013 à 09:57:38  profilanswer
 

J'ai l'impression que c'est un bordel de gérer plusieurs versions de PHP sur son système en fait.
Je pense que les VM sont plus appropriées.


---------------
Twitter
n°2201055
TheCreator
zwiiiii and then shbrouk tak
Posté le 28-08-2013 à 23:03:43  profilanswer
 

url? :o


---------------
La superstition c'est comme ceux qui réparent les fauteuils, il faut que le bois qu'ils rajoutent soit à peu près comme l'autre bois sinon ça se voit trop.
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5  ..  59  60  61  ..  64  65  66  67  68  69

Aller à :
Ajouter une réponse
 

Sujets relatifs
Problème pour une mise en page sous forme de tableauAfficher sur une page web directement le resultat d'une autre page web
[PHP] Fonction include plus rapide qu'un bout de code dans la page ?Ouvrir un fichier HTML en fin de page
[Résolu] Expirer la cache au niveau de la pageexecuter une page php sans rien afficher
inserer dans ma page wikiControler le changement de page
Certificat SSL a valider pour chaque élément de pageinstallé un mdp sur une page web avec Namo
Plus de sujets relatifs à : blabla@php | faq et bonnes pratiques page 1


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)