Discussion:
différence entre 'categories' et "categories"
(trop ancien pour répondre)
Une Bévue
2011-11-23 10:55:30 UTC
Permalink
Je viens de m'apercevoir qu'il y aurait une différence entre
'categories' et "categories".

J'ai un tableau $tables qui vaut :
Array ( [0] => categories [1] => items )

Ce sont les TABLEs d'une base de données.

si je fais :
in_array('categories', $tables);
me retourne FALSE

tandis que
in_array("categories", $tables);

que je mette $strict à true ou pas...
--
« La preuve que le pape ne connaît rien à l'utilisation du
préservatif, c'est qu'il l'a mis à l'index. »
(André Santini)
Olivier Miakinen
2011-11-23 23:01:44 UTC
Permalink
Bonjour,
Post by Une Bévue
Je viens de m'apercevoir qu'il y aurait une différence entre
'categories' et "categories".
Ce n'est pas possible, il doit y avoir un bug quelque part que tu
n'as pas vu.
Post by Une Bévue
Array ( [0] => categories [1] => items )
Je suppose qu'en réalité il s'agit de 'categories' (ou
"categories") et 'items' (ou "items"), Mais bien sûr
print_r n'affiche pas de guillemets.
Post by Une Bévue
Ce sont les TABLEs d'une base de données.
in_array('categories', $tables);
me retourne FALSE
tandis que
in_array("categories", $tables);
... te retourne TRUE je suppose.
Post by Une Bévue
que je mette $strict à true ou pas...
C'est normal que le paramètre $strict ne change rien. Mais ce n'est
pas normal que 'categories' soit différent de "categories".

À vérifier :
- que tu écris bien 'categories' et "categories" respectivement,
sans espace, ni BOM, ni accent, ni majuscule ;
- is_string($tables[0]) ;
- ($tables[0] == "categories") ;
- ($tables[0] === "categories") ;
- ($tables[0] == 'categories') ;
- ($tables[0] === 'categories') ;
- ("categories" == 'categories') ;
- ("categories" === 'categories') ...

Tu nous tiens au courant ?
Une Bévue
2011-11-24 07:43:23 UTC
Permalink
Post by Olivier Miakinen
Tu nous tiens au courant ?
oui, oui, je vérifie ça, en fait le 'caregories' vient d'une requête
sqlite3 qui me retourne le nom des tables dans ma base.

je regarde ça dans 1H ...
--
« La preuve que le pape ne connaît rien à l'utilisation du
préservatif, c'est qu'il l'a mis à l'index. »
(André Santini)
Une Bévue
2011-11-24 08:43:43 UTC
Permalink
Post by Une Bévue
je regarde ça dans 1H ...
Bon pour l'instant, je ne parviens plus à reproduire car le script :
<?php
header('Content-type: text/html; charset = utf-8');
$db = new SQLite3('cli.db');
$tables = array();

$sql = "SELECT name FROM sqlite_master WHERE type = 'table' ORDER BY
name;";
$ret = $db->query($sql);
if($ret){
while ($row = $ret->fetchArray()){
$name = $row['name'];
$tables[] = $name;
echo "<h5>TABLE name: '$name' exists!</h5>";
}
}

echo "<h5>in_array(\"categories\", $tables, true) =
".in_array("categories", $tables, true)."</h5>";

echo "<h5>in_array('categories', $tables, true) =
".in_array('categories', $tables, true)."</h5>";

echo "<h5>in_array(\"items\", $tables, true) = ".in_array("items",
$tables, true)."</h5>";

echo "<h5>in_array('items', $tables, true) = ".in_array('items',
$tables, true)."</h5>";

?>

Me retourne qqc de tout à fait correct :
TABLE name: 'categories' exists!

TABLE name: 'items' exists!

in_array("categories", Array, true) = 1

in_array('categories', Array, true) = 1

in_array("items", Array, true) = 1

in_array('items', Array, true) = 1

bon il faut que j'y regarde de plus près, voir en arrière ce qui a bien
pu se passer...
--
« La preuve que le pape ne connaît rien à l'utilisation du
préservatif, c'est qu'il l'a mis à l'index. »
(André Santini)
Olivier Miakinen
2011-11-24 16:15:25 UTC
Permalink
Post by Une Bévue
bon il faut que j'y regarde de plus près, voir en arrière ce qui a bien
pu se passer...
Je parie pour un truc bête, du genre de « 'caregories' » au lieu de
« 'categories' », comme dans ton article précédent. ;-)
Une Bévue
2011-11-25 06:15:17 UTC
Permalink
Post by Olivier Miakinen
Je parie pour un truc bête, du genre de « 'caregories' » au lieu de
« 'categories' », comme dans ton article précédent.;-)
possible que ce ne soit qu'une typo...

Continuer la lecture sur narkive:
Loading...