PHP单引号和双引号的区别?

PHP单引号和双引号的区别?

$a = 1;
print '单引号原样输出:\n$a'.PHP_EOL;
print "双引号解析输出:\n$a"; // 会对$a、\n解析输出

/* result:
    单引号原样输出:\n$a
    双引号解析输出:
    1
*/

// 可以看出:二者输出方式不同而已

PHP中echo、print、printf、print_r、var_dump的区别?

echo (6.7>6.3).PHP_EOL; // PHP_EOL相当于"\n"解析换行
echo (6.3>6.7).PHP_EOL;
print 'print:\n$a'.PHP_EOL;
echo printf('printf: %f %d %s '.PHP_EOL, 1.56,1.56, 1.56); //printf返回值26
echo print_r('print_r').PHP_EOL.print_r(':').PHP_EOL; //print_r返回1
echo var_dump('var_dump'); //var_dump返回null,所以打印不出来

/* result:
    1

    print:\n$a
    printf: 1.560000 1 1.56
    26print_r:1
    1
    string(8) "var_dump"
 */

// 可以看出,echo、print是语言结构,而printf、print_r、var_dump是函数,函数就需括号
// 函数一般会有返回值,printf返回字符串长度,print_r返回1,var_dump返回null
// 不管是用什么打印语句,都是为了达到标准输出
// 所以我们也可以自己封装个打印语句

function print_my($expression, array $args){
    if (is_string($expression)){
        $pattern = '/{{.*?}}/';
        if (preg_match_all($pattern, $expression) === count($args)){
            $pattern = array();
            for ($i=0; $i<count($args); $i++){
                $pattern[] = '/{{'.$i.'+?}}/';
            }
            $expression = preg_replace($pattern, $args, $expression);
            echo $expression;
        };
    }
}
print_my('{{0}}{{1}}{{2}}你好',['和', '号', '1']);

Python单引号、双引号、三引号的区别?

a = 'aa' \
    'aa'
b = "aa" \
    "aa"
c = """aaa


aaa"""
print(a,b,c)

""" // result:
aaaa aaaa aaa


aaa
"""
# 无多大区别,都是原样输出
# 只需记得 三引号类似于一种“所见即所得”的境界
# 三引号可以使用计算机回车键当换行符,单引号和双引号不可,强行使用只会导致语法错误,在PHP里,也可使用回车当换行符
# 三引号无需反转义字符'\'就可以嵌套单引号和双引号,

猜你喜欢

转载自blog.csdn.net/xwx_100/article/details/83214544
今日推荐