Home Backend Development PHP Tutorial Detailed introduction to the difference between single quotes and double quotes in PHP_PHP Tutorial

Detailed introduction to the difference between single quotes and double quotes in PHP_PHP Tutorial

Jul 13, 2016 pm 05:13 PM
php introduce about the difference and exist quotation marks article detailed

The article introduces in detail the difference between single quotes and double quotes in PHP. Students who need to know more can refer to it.

1. Define string
In PHP, strings can be defined using single quotes or double quotes. However, the same single or double quotation marks must be used to define the string. For example, 'Hello' and 'Hello' are illegal string definitions. ​
When defining a string, only one type of quotation mark is considered a delimiter, either a single quotation mark or a double quotation mark. Thus, if a string begins with a double quote, only the double quote is parsed by the parser. This way, you can include any other character, even single quotes, within the double-quoted string. The following quotation mark strings are legal:

Php code

$s = "I am a 'single quote string' inside a double quote string";

$s = 'I am a "double quote string" inside a single quote string';

$s = "I am a 'single quote string' inside a double quote string";

$s = 'I am a "double quote string" inside a single quote string';   

The string "Why doesn't "this" work?" will be divided into three paragraphs. If you want to express double quotes in this string, you can use the escape character "" (backslash) to become "Why doesn't "this" work?"

2. Single and double quotes in string variables

PHP allows us to directly include string variables in double-quoted strings. We can find that the processing results of the following two strings are the same.

$full_name = $first_name . ' ' . $last_name;

$full_name = "$first_name $last_name";  

Single quote strings and double quote strings are processed differently in PHP. The contents of a double-quoted string can be interpreted and replaced, while the contents of a single-quoted string are always considered ordinary characters. For example:

Php code

$foo = 2;

echo "foo is $foo"; // Print result: foo is 2

echo 'foo is $foo'; // Print result: foo is $foo

echo "foo is $foon"; // Print result: foo is 2 (with newline)

echo 'foo is $foon'; // Print result: foo is $foon

$foo = 2;

echo "foo is $foo"; // Print result: foo is 2

echo 'foo is $foo'; // Print result: foo is $foo

echo "foo is $foon"; // Print result: foo is 2 (with newline)

echo 'foo is $foon'; // Print result: foo is $foon  

As you can see, even the backslash within a single quote string loses its extended meaning (except for the inserted backslash and the inserted single quote '). Therefore, when you want to perform variable substitution and include escape sequences such as n (newline) in a string, you should use double quotes. Single quote strings can be used anywhere else. The processing speed of using single quote strings in scripts will be faster, because the PHP parser processes single quote strings in a relatively simple way, while the processing of double quotes also requires parsing inside the string. It is therefore more complex and therefore slightly slower to process. ​

Some problems may arise when referencing complex combinations of variables in strings. The following code will work fine:

Php code

echo "value = $foo";

echo "value = $a[$i]";

echo "value = $foo";

echo "value = $a[$i]";  

The following code does not get the results we want:

echo "value = $a[$i][$j]"; //We want to print an element of the two-dimensional array $a. ​

To avoid these potential problems in using strings, we usually separate complex variables from strings, like this: echo 'value = ' . $a[$i][$j];/ / Use dot (.) to connect strings

Another way is to enclose complex variables in curly braces, so that the parser can correctly identify them:

echo "value = {$a[$i][$j]}" //Print an element of the two-dimensional array $a  

In this way, a new problem arises. When we want to quote the curly brace character itself in a string, we need to remember to use the escape character:

Php code

$var = 3;

echo "value = {$var}"; // print result "value = 3"

echo "value = {$var}"; // print result "value = {3}"

$var = 3;

echo "value = {$var}"; // print result "value = 3"

echo "value = {$var}"; // print result "value = {3}"

3. In SQL statement

This is a problem that is often encountered. The SQL statement inserted into the database uses single quotes to define the string. If you want to insert a string containing single quotes into the database, the SQL statement will go wrong.

For example: $sql="insert into userinfo (username,password) Values('O'Kefee','123456')"  

At this time, one of the methods is to add the escape character backslash in the SQL statement,

That is:...Values('O'Kefee',...  

Of course, you can also use the function addslashes(). The function of this function is to add escape characters,

That is: $s = addslashes("O'Kefee") ……Values('".$s."',……  

Another method is to set the magic-quotes option in php.ini. If this option is turned on, if there are single quotes in the information submitted through the form, escape characters will be automatically added. So there is no need to use other functions.

Supplement: This starts with the role of double quotes and single quotes: The fields in double quotes will be interpreted by the compiler and then output as HTML code, but the fields in single quotes do not need to be interpreted and will be output directly.

For example:

$abc='I love u';

echo $abc //The result is: I love u

echo '$abc' //The result is: $abc

echo "$abc" //The result is: I love u

So when assigning values ​​to SQL statements in the database, double quotes must be used. SQL="select a,b,c from..." However, there will be single quotes in the SQL statement to quote the field names

For example: select * from table where user='abc';

The SQL statement here can be written directly as SQL="select * from table where user='abc'"

But if it’s like this:

$user='abc';

SQL1="select * from table where user=' ".$user." ' "; Compare

SQL2="select * from table where user=' abc ' "

I added a little more space between the single quotes and double quotes, I hope you can see it more clearly.

That is, replace 'abc' with '".$user."' all within a single quote. Just split the entire SQL string. SQL1 can be broken down into the following 3 parts

1:"select * from table where user=' "

2:$user

3:" ' "

Use . to connect strings

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/629102.htmlTechArticleThe article introduces in detail the difference between single quotes and double quotes in PHP. Students who need to know more about it Please refer to it. 1. Define a string In PHP, the definition of a string can be...
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

PHP and Python: Comparing Two Popular Programming Languages PHP and Python: Comparing Two Popular Programming Languages Apr 14, 2025 am 12:13 AM

PHP and Python each have their own advantages, and choose according to project requirements. 1.PHP is suitable for web development, especially for rapid development and maintenance of websites. 2. Python is suitable for data science, machine learning and artificial intelligence, with concise syntax and suitable for beginners.

The Future of PHP: Adaptations and Innovations The Future of PHP: Adaptations and Innovations Apr 11, 2025 am 12:01 AM

The future of PHP will be achieved by adapting to new technology trends and introducing innovative features: 1) Adapting to cloud computing, containerization and microservice architectures, supporting Docker and Kubernetes; 2) introducing JIT compilers and enumeration types to improve performance and data processing efficiency; 3) Continuously optimize performance and promote best practices.

PHP vs. Python: Understanding the Differences PHP vs. Python: Understanding the Differences Apr 11, 2025 am 12:15 AM

PHP and Python each have their own advantages, and the choice should be based on project requirements. 1.PHP is suitable for web development, with simple syntax and high execution efficiency. 2. Python is suitable for data science and machine learning, with concise syntax and rich libraries.

PHP's Current Status: A Look at Web Development Trends PHP's Current Status: A Look at Web Development Trends Apr 13, 2025 am 12:20 AM

PHP remains important in modern web development, especially in content management and e-commerce platforms. 1) PHP has a rich ecosystem and strong framework support, such as Laravel and Symfony. 2) Performance optimization can be achieved through OPcache and Nginx. 3) PHP8.0 introduces JIT compiler to improve performance. 4) Cloud-native applications are deployed through Docker and Kubernetes to improve flexibility and scalability.

PHP: A Key Language for Web Development PHP: A Key Language for Web Development Apr 13, 2025 am 12:08 AM

PHP is a scripting language widely used on the server side, especially suitable for web development. 1.PHP can embed HTML, process HTTP requests and responses, and supports a variety of databases. 2.PHP is used to generate dynamic web content, process form data, access databases, etc., with strong community support and open source resources. 3. PHP is an interpreted language, and the execution process includes lexical analysis, grammatical analysis, compilation and execution. 4.PHP can be combined with MySQL for advanced applications such as user registration systems. 5. When debugging PHP, you can use functions such as error_reporting() and var_dump(). 6. Optimize PHP code to use caching mechanisms, optimize database queries and use built-in functions. 7

PHP vs. Other Languages: A Comparison PHP vs. Other Languages: A Comparison Apr 13, 2025 am 12:19 AM

PHP is suitable for web development, especially in rapid development and processing dynamic content, but is not good at data science and enterprise-level applications. Compared with Python, PHP has more advantages in web development, but is not as good as Python in the field of data science; compared with Java, PHP performs worse in enterprise-level applications, but is more flexible in web development; compared with JavaScript, PHP is more concise in back-end development, but is not as good as JavaScript in front-end development.

The Enduring Relevance of PHP: Is It Still Alive? The Enduring Relevance of PHP: Is It Still Alive? Apr 14, 2025 am 12:12 AM

PHP is still dynamic and still occupies an important position in the field of modern programming. 1) PHP's simplicity and powerful community support make it widely used in web development; 2) Its flexibility and stability make it outstanding in handling web forms, database operations and file processing; 3) PHP is constantly evolving and optimizing, suitable for beginners and experienced developers.

PHP: The Foundation of Many Websites PHP: The Foundation of Many Websites Apr 13, 2025 am 12:07 AM

The reasons why PHP is the preferred technology stack for many websites include its ease of use, strong community support, and widespread use. 1) Easy to learn and use, suitable for beginners. 2) Have a huge developer community and rich resources. 3) Widely used in WordPress, Drupal and other platforms. 4) Integrate tightly with web servers to simplify development deployment.

See all articles