Dollar ($) sign in password string treated as variable
$_DB['password'] = 'mypas$word';
Single quote strings are not processed and are taken "as-is". You should always use single quote strings unless you specifically need the $variable or escape sequences (\n, \r, etc) substitutions. It's faster and less error prone.
PHP adding $ signs into strings without it being a variable?
As PHP Document says
If the string is enclosed in double-quotes ("), PHP will interpret the
following escape sequences for special characters: \$ Dollar Sign
http://php.net/manual/en/language.types.string.php
So if you want to use $
in a double-quotes strings use \$
instead of $
.
Or simply use single quotes
What is the purpose of the dollar sign in JavaScript?
A '$' in a variable means nothing special to the interpreter, much like an underscore.
From what I've seen, many people using jQuery (which is what your example code looks like to me) tend to prefix variables that contain a jQuery object with a $ so that they are easily identified and not mixed up with, say, integers.
The dollar sign function $()
in jQuery is a library function that is frequently used, so a short name is desirable.
How to delete dollar signs($) from a PHP variable only if the dollar signs are surrounding a word
First of all, i will answer your question
Use preg_replace
instead, that is uses with a pattern that detects only those dollar signs, that are surrounding a word.
$string = preg_replace('/\$(\w+)\$/', '$1', $string);
Now an improvement for your code
As mentioned in the comments of your question, you would need to surround your string with single quotes ('
) to prevent PHP from replacing your words, that are prefixed by a dollar sign, with their corresponding variables.
A good source to understand the differences between double- and single-enquoted strings can be found from this question.
Escape $ character inside a MS SQL query in PHP
You can escape the $
and then it won't be read as a variable by PHP.
echo "\$test";
Demo: https://eval.in/605867 Vs. https://eval.in/605866 (which is empty because $test
doesnt exist)
...
or since your query doesn't use single quotes just use single quotes for the string encapsulation.
echo '$test';
Use the $ symbol as text, not as a variable in PHP
It's been a while since I wrote PHP, but I believe that if you use single quotes(') instead of double quotes("), PHP won't evaluate it.
You may also be able to escape it with a backslash: \$
.
How to echo a $ sign in php
This won't work:
$replacements[1] = '$name';
$replacements[0] = '$company';
Use double-quotes:
$replacements[1] = "$name";
$replacements[0] = "$company";
or no quotes:
$replacements[1] = $name;
$replacements[0] = $company;
Use this:
$body = "<html><head>...</head><body> " . $inserted_text_dynamic . " </body>";
Instead of:
$body = <html><head>...</head><body> $inserted_text_dynamic </body>
And remove firts brackets in
$inserted_text_dynamic = (preg_replace($patterns, $replacements, $inserted_text));
like this:
$inserted_text_dynamic = preg_replace($patterns, $replacements, $inserted_text);
Related Topics
: Operator (The 'Elvis Operator') in PHP
MySQL Datetime Fields and Daylight Savings Time - How to Reference the "Extra" Hour
Lamp: How to Create .Zip of Large Files For the User on the Fly, Without Disk/Cpu Thrashing
Get Data from Json File With PHP
How to Find Out Where a Function Is Defined
Is PHP Compiled or Interpreted
How to Give PHP Write Access to a Directory
How to Hide .PHP Extension in .Htaccess
Paypal Access - Ssl Certificate: Unable to Get Local Issuer Certificate
Making Sure PHP Substr Finishes on a Word Not a Character
Execute PHP Scripts Within Node.Js Web Server
How to Find Out How "Deep" a PHP Array Is
How to Write a File in Utf-8 Format
Connect PHP to Mssql Via Pdo Odbc
Who Should Handle the Conditions in Complex Queries, the Data Mapper or the Service Layer
PHP Library For Parsing Xml With a Colons in Tag Names
Extract Jsonp Resultset in PHP
Efficiently Counting the Number of Lines of a Text File. (200Mb+)