PHP 출력의 차이점은 다음과 같습니다. 1. echo는 void를 반환하고 값을 반환하지 않습니다. 2. echo 속도는 print보다 빠릅니다. 3. print_r 함수는 변수에 대한 이해하기 쉬운 정보를 인쇄합니다. 5. sprintf 함수는 형식이 지정된 문자열을 출력하는 대신 변수에 씁니다. 6. var_dump 함수는 디버깅에 사용됩니다.
이 튜토리얼의 운영 환경: Windows 7 시스템, PHP 버전 8.1, DELL G3 컴퓨터
php
php 출력 echo, print 에서 6가지 출력 방법의 차이점 print_r , printf, sprintf 및 var_dump 간의 차이점을 비교합니다.
1. echo
echo()는 실제로 함수가 아니고 PHP 문이므로 괄호를 사용할 필요가 없습니다. 그러나 echo()에 두 개 이상의 인수를 전달하려는 경우 괄호를 사용하면 구문 분석 오류가 발생합니다. 게다가 echo는 void를 반환하고 값을 반환하지 않으므로 값을 할당하는 데 사용할 수 없습니다.
<?php $a = echo("words"); // 错误!不能用来赋值 echo "words"; // 55nav echo ("words"); // 55nav echo ("apple","bear"); //发生错误,有括号不能传递多个参数 echo "alice","bill","cart", "daring"; // 不用括号的时候可以用逗号隔开多个值, 会输出 alicebillcartdaring 不管是否换行,最终显示都是为一行 $fistname="alice"; echo "$fistname com"; // 如果 $firstname = "alice", 则会输出 alice com. echo '$firstname com'; // 由于使用单引号,所以不会输出$firstname的值,而是输出 $firstname com ?>
2, print
print()는 echo()와 사용법은 동일하지만 에코 속도가 print보다 약간 빠릅니다. 실제로 함수도 아니므로 괄호를 사용할 필요가 없습니다.
그러나 print()에 두 개 이상의 인수를 전달하려는 경우 괄호를 사용하면 구문 분석 오류가 발생합니다.
print는 항상 1을 반환하는데 이는 echo와 다릅니다.
즉, print를 사용하여 값을 할당할 수 있지만 실제적인 의미는 없습니다.
1 <?php 2 3 $a = print("alice"); // 这个是允许的 4 5 echo $a; // $a的值是1
3. print_r 함수
print_r 함수는 변수에 대한 정보를 이해하기 쉽게 출력합니다.
구문:
mixed print_r (mixed $expression [, bool return ] )
변수가 문자열, 정수 또는 부동소수점인 경우 해당 값이 배열인 경우 직접 출력됩니다. 쉽게 읽을 수 있도록 형식화된 배열, 즉 키와 값에 해당하는 형식을 출력합니다.
객체 객체와 유사합니다.
print_r에는 두 개의 매개변수가 있습니다. 첫 번째는 변수이고 두 번째는 true로 설정할 수 있습니다. true로 설정하면 문자열이 반환되고, 그렇지 않으면 부울 값 TRUE이 반환됩니다.
<?php $a="alice"; $c = print_r($a); echo $c; // $c的值是TRUE $c = print_r($a,true); echo $c; // $c的值是字符串alice $d = [1,2,3,4]; print_r($d); // Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 )
4. printf 함수
printf() 함수 는 형식화된 문자열을 반환합니다 .
구문:
printf(format,arg1,arg2,arg++)
매개변수 형식은 변환된 형식으로, 백분율 기호("%")로 시작하고 변환 문자로 끝납니다.
가능한 형식 값은 다음과 같습니다. * %% – 백분율 기호를 반환합니다.
* %b – 二进制数* %c – 依照 ASCII 值的字符* %d – 带符号十进制数* %e – 可续计数法(比如 1.5e+3)* %u – 无符号十进制数* %f – 浮点数(local settings aware)* %F – 浮点数(not local settings aware)* %o – 八进制数* %s – 字符串* %x – 十六进制数(小写字母)* %X – 十六进制数(大写字母)arg1, arg2, arg++ 等参数将插入到主字符串中的百分号 (%) 符号处。该函数是逐步执行的,在第一个 % 符号中,插入 arg1,在第二个 % 符号处,插入 arg2,依此类推。
인수 인수보다 % 기호가 더 많으면 자리 표시자를 사용해야 합니다. 자리 표시자는 % 기호 뒤에 삽입되며 숫자와 "$"로 구성됩니다.
숫자를 사용하여 표시되는 매개변수를 지정할 수 있습니다. 자세한 내용은 예를 참조하세요.
<?php printf("My name is %s %s。","alice", "com"); // My name is alice com。 printf("My name is %1\$s %1\$s","alice", "com"); // 在s前添加1\$或2\$.....表示后面的参数显示的位置,此行输出 My name is alice alice因为只显示第一个参数两次。 printf("My name is %2\$s %1\$s","alice", "com"); // My name is com alice ?>
5、sprintf函数
此函数使用方法和printf一样,唯一不同的就是该函数把格式化的字符串写入一个变量中,而不是输出来。
<?php sprintf("My name is %1\$s %1\$s","alice", "com"); //你会发现没有任何东西输出的。 $out = sprintf("My name is %1\$s %2\$s","alice", "com"); echo $out; //输出 My name is alice com
6、var_dump函数
功能: 输出变量的内容、类型或字符串的内容、类型、长度。常用来调试。
1 var_dump('hello'); // string(5) "hello"
推荐学习:《PHP视频教程》
위 내용은 PHP 출력의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!