Dollar ($) signe dans la chaîne de mot de passe traitée comme variable

Passé un certain temps dans la résolution d'un problème empêchant un PHP/MySQL application web a été d'avoir des problèmes de connexion à la base de données. La base de données peut être consulté à partir de la coque et de phpMyAdmin, avec les mêmes informations d'identification et elle n'a pas de sens.

S'avère le mot de passe a un signe $ dans lui:

$_DB["password"] = "mypas$word";

Le mot de passe a été envoyé "mypas", ce qui est évidemment faux.

Quelle est la meilleure façon de gérer ce problème? J'ai échappé à l' $ avec un \

$_DB["password"] = "mypas$word";

et cela a fonctionné.

J'utilise généralement $string = 'test' pour les chaînes qui est probablement la façon dont j'ai évité de courir dans ce avant.

Est ce comportement correct? Si ce mot de passe est stocké dans une base de données et PHP sorti - serait-ce le même problème se produit-il? Ce qui me manque ici...

InformationsquelleAutor ncatnow | 2010-04-01