Changeset 82579 in spip-zone


Ignore:
Timestamp:
May 19, 2014, 3:32:02 PM (5 years ago)
Author:
fil@…
Message:

utiliser array() non [] pour compatibilite PHP < 5.4

Location:
_plugins_/indexer/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/indexer/trunk/iterateur/sphinx.php

    r82569 r82579  
    5353         * @var array
    5454         */
    55         protected $command = [];
     55        protected $command = array();
    5656
    5757        /**
     
    5959         * @var array
    6060         */
    61         protected $info = [];
     61        protected $info = array();
    6262
    6363        /**
     
    7777         * @var array
    7878         */
    79         protected $result = [];
     79        protected $result = array();
    8080
    8181        /**
     
    9797         * @param array $info
    9898         */
    99         public function __construct($command, $info=[]) {
    100 
    101                 $this->command = $command + [
    102                         'index'     => [],
    103                         'selection' => [],
    104                         'recherche' => [],
    105                         'snippet'   => [],
    106                         'facet'     => [],
    107                 ];
     99        public function __construct($command, $info=array()) {
     100
     101                $this->command = $command + array(
     102                        'index'     => array(),
     103                        'selection' => array(),
     104                        'recherche' => array(),
     105                        'snippet'   => array(),
     106                        'facet'     => array(),
     107                );
    108108
    109109#var_dump($this->command);
     
    153153        **/
    154154        public function setIndex($index) {
    155                 if (!is_array($index)) $index = [$index];
     155                if (!is_array($index)) $index = array($index);
    156156                $index = array_filter($index);
    157157                if (!$index) {
     
    175175        **/
    176176        public function setSelection($select) {
    177                 if (!is_array($select)) $select = [$select];
     177                if (!is_array($select)) $select = array($select);
    178178                $select = array_filter($select);
    179179                // si aucune selection demandée, on prend tout !
     
    196196        **/
    197197        public function setRecherche($recherche) {
    198                 if (!is_array($recherche)) $recherche = [$recherche];
     198                if (!is_array($recherche)) $recherche = array($recherche);
    199199                $recherche = array_filter($recherche);
    200200                if (!$recherche) {
     
    210210
    211211        public function setOrderby($orderby) {
    212                 if (!is_array($orderby)) $orderby = [$orderby];
     212                if (!is_array($orderby)) $orderby = array($orderby);
    213213                $orderby = array_filter($orderby);
    214214                if (!$orderby) {
     
    253253        public function setOneSnippet($desc) {
    254254
    255                 $desc += [
     255                $desc += array(
    256256                        'champ'  => 'content',
    257257                        'phrase' => '',
    258258                        'limit'  => 200,
    259259                        'as'     => 'snippet'
    260                 ];
     260                );
    261261                if (!$desc['phrase']) {
    262262                        return false;
     
    279279                $phrase = $this->getSnippetAutoPhrase($command);
    280280                if (!$phrase) return false;
    281                 return $this->setOneSnippet(['phrase' => $phrase]);
     281                return $this->setOneSnippet(array('phrase' => $phrase));
    282282        }
    283283
     
    295295                // mots de la recherche
    296296                $recherche = $command['recherche'];
    297                 if (!is_array($recherche)) $recherche = [$recherche];
     297                if (!is_array($recherche)) $recherche = array($recherche);
    298298                $recherche = array_filter($recherche);
    299299                $phrase .= implode(' ', $recherche);
     
    350350                                continue;
    351351                        }
    352                         $this->facet[] = ['alias' => $alias, 'query' => $query];
     352                        $this->facet[] = array('alias' => $alias, 'query' => $query);
    353353                        $this->sphinxQLQuery->facet($query);
    354354                }
  • _plugins_/indexer/trunk/lib/Sphinx/SphinxQL/Query.php

    r82568 r82579  
    77 */
    88class Query{
    9         private $select  = [];
    10         private $from    = [];
    11         private $where   = [];
    12         private $groupby = [];
    13         private $orderby = [];
     9        private $select  = array();
     10        private $from    = array();
     11        private $where   = array();
     12        private $groupby = array();
     13        private $orderby = array();
    1414        private $limit   = '';
    15         private $facet   = [];
     15        private $facet   = array();
    1616
    1717        public function __construct() {}
     
    6363
    6464        public function get() {
    65                 $query = [];
     65                $query = array();
    6666                $this->removeEmpty();
    6767                if ($this->select)   $query[] = 'SELECT '   . implode(', ', $this->select);
     
    7676
    7777        private function removeEmpty() {
    78                 foreach (['select', 'from', 'where', 'groupby', 'orderby', 'facet'] as $key) {
     78                foreach (array('select', 'from', 'where', 'groupby', 'orderby', 'facet') as $key) {
    7979                        $this->$key = array_filter($this->$key);
    8080                        #$this->$key = array_filter($this->key, 'strlen'); // leaves 0
  • _plugins_/indexer/trunk/lib/Sphinx/SphinxQL/SphinxQL.php

    r82568 r82579  
    5959                }
    6060
    61                 $liste = [
    62                         'docs'   => [],
    63                         'facets' => [],
    64                         'meta'   => [],
     61                $liste = array(
     62                        'docs'   => array(),
     63                        'facets' => array(),
     64                        'meta'   => array(),
    6565                        'query'  => $query
    66                 ];
     66                );
    6767
    6868                if ($docs = $this->query($query)) {
     
    7070                        // 1) les documents trouvés
    7171                        // 2+) les FACET à la suite
    72                         $reponses = [];
     72                        $reponses = array();
    7373                         do {
    7474                                $reponses[] = $docs->fetchAll(\PDO::FETCH_ASSOC);
    7575                        } while ($docs->nextRowset());
    7676
    77                         $meta = $this->query('SHOW meta');
    78 
    7977                        $liste['docs']   = array_shift($reponses);
    8078                        $liste['facets'] = $this->parseFacets($reponses);
     79
     80                        $meta = $this->query('SHOW meta');
     81                        if ($errs = $this->sql->errorInfo()) {
     82                                # TODO: comprendre le pourquoi de l'erreur
     83                                # Cannot execute queries while other unbuffered queries are active. Consider using PDOStatement::fetchAll(). Alternatively, if your code is only ever going to run against mysql, you may enable query buffering by setting the PDO::MYSQL_ATTR_USE_BUFFERED_QUERY attribute.
     84                                var_dump($errs);
     85                        }
    8186                        if ($meta) {
    8287                                $liste['meta']   = $this->parseMeta($meta->fetchAll(\PDO::FETCH_ASSOC));
     
    8691                }
    8792
    88                 return ['query' => $liste];
     93                return array('query' => $liste);
    8994        }
    9095
     
    97102        **/
    98103        public function parseFacets($facettes) {
    99                 $facets = [];
     104                $facets = array();
    100105                if (is_array($facettes)) {
    101106                        foreach($facettes as $facette) {
     
    111116                                        }
    112117                                        if ($i == 0) {
    113                                                 $facets[$key] = [];
     118                                                $facets[$key] = array();
    114119                                        }
    115120                                        $facets[$key][$value] = $nb;
     
    126131         */
    127132        public function parseMeta($metas) {
    128                 $liste = [];
     133                $liste = array();
    129134                foreach ($metas as $meta) {
    130135                        $cle = $meta['Variable_name'];
     
    136141
    137142                                if (!isset($liste[$cle])) {
    138                                         $liste[$cle] = [];
     143                                        $liste[$cle] = array();
    139144                                }
    140145
     
    147152                        $liste['keywords'] = array();
    148153                        foreach ($liste['keyword'] as $index => $key) {
    149                                 $liste['keywords'][$key] = [
     154                                $liste['keywords'][$key] = array(
    150155                                        'keyword' => $key,
    151156                                        'docs' => $liste['docs'][$index],
    152157                                        'hits' => $liste['hits'][$index],
    153                                 ];
     158                                );
    154159                        }
    155160                        unset($liste['keyword'], $liste['docs'], $liste['hits']);
Note: See TracChangeset for help on using the changeset viewer.