PHP
문자열 서식 지정
수색…
하위 문자열 추출 / 바꾸기
단일 문자는 중괄호 구문뿐만 아니라 배열 (대괄호) 구문을 사용하여 추출 할 수 있습니다. 이 두 가지 구문은 문자열에서 하나의 문자 만 반환합니다. 둘 이상의 문자가 필요한 경우 함수가 필요합니다. 즉, substr
PHP의 모든 것과 마찬가지로 문자열은 0
색인화됩니다.
$foo = 'Hello world';
$foo[6]; // returns 'w'
$foo{6}; // also returns 'w'
substr($foo, 6, 1); // also returns 'w'
substr($foo, 6, 2); // returns 'wo'
문자열은 같은 대괄호와 중괄호 구문을 사용하여 한 번에 한 문자 씩 변경할 수 있습니다. 두 개 이상의 문자를 바꾸 려면 함수가 필요합니다. 즉, substr_replace
$foo = 'Hello world';
$foo[6] = 'W'; // results in $foo = 'Hello World'
$foo{6} = 'W'; // also results in $foo = 'Hello World'
substr_replace($foo, 'W', 6, 1); // also results in $foo = 'Hello World'
substr_replace($foo, 'Whi', 6, 2); // results in 'Hello Whirled'
// note that the replacement string need not be the same length as the substring replaced
문자열 보간법
보간을 사용하여 문자열 내의 변수를 보간 ( 삽입 ) 할 수도 있습니다. 보간은 큰 따옴표로 묶인 문자열과 heredoc 구문에서만 작동합니다.
$name = 'Joel';
// $name will be replaced with `Joel`
echo "<p>Hello $name, Nice to see you.</p>";
# ↕
#> "<p>Hello Joel, Nice to see you.</p>"
// Single Quotes: outputs $name as the raw text (without interpreting it)
echo 'Hello $name, Nice to see you.'; # Careful with this notation
#> "Hello $name, Nice to see you."
복잡한 (중괄호) 구문 형식은 중괄호 {}
내에 변수를 래핑해야하는 또 다른 옵션을 제공합니다. 이는 텍스트 내용에 변수를 포함시키고 텍스트 내용과 변수 간의 모호성을 방지 할 때 유용 할 수 있습니다.
$name = 'Joel';
// Example using the curly brace syntax for the variable $name
echo "<p>We need more {$name}s to help us!</p>";
#> "<p>We need more Joels to help us!</p>"
// This line will throw an error (as `$names` is not defined)
echo "<p>We need more $names to help us!</p>";
#> "Notice: Undefined variable: names"
{}
구문은 $
로 시작하는 변수를 문자열로만 보간합니다. {}
구문 은 임의의 PHP 표현식을 평가 하지 않습니다 .
// Example tying to interpolate a PHP expression
echo "1 + 2 = {1 + 2}";
#> "1 + 2 = {1 + 2}"
// Example using a constant
define("HELLO_WORLD", "Hello World!!");
echo "My constant is {HELLO_WORLD}";
#> "My constant is {HELLO_WORLD}"
// Example using a function
function say_hello() {
return "Hello!";
};
echo "I say: {say_hello()}";
#> "I say: {say_hello()}"
그러나 {}
구문은 변수, 배열 요소 또는 속성에 대한 모든 배열 액세스, 속성 액세스 및 함수 / 메서드 호출을 평가합니다.
// Example accessing a value from an array — multidimensional access is allowed
$companions = [0 => ['name' => 'Amy Pond'], 1 => ['name' => 'Dave Random']];
echo "The best companion is: {$companions[0]['name']}";
#> "The best companion is: Amy Pond"
// Example of calling a method on an instantiated object
class Person {
function say_hello() {
return "Hello!";
}
}
$max = new Person();
echo "Max says: {$max->say_hello()}";
#> "Max says: Hello!"
// Example of invoking a Closure — the parameter list allows for custom expressions
$greet = function($num) {
return "A $num greetings!";
};
echo "From us all: {$greet(10 ** 3)}";
#> "From us all: A 1000 greetings!"
달러 것을 알 $
기호가 여는 중괄호 후 나타날 수 {
그 전에 나타날 수 있습니다, 펄이나 쉘 스크립트처럼, 위의 예로서, 또는 :
$name = 'Joel';
// Example using the curly brace syntax with dollar sign before the opening curly brace
echo "<p>We need more ${name}s to help us!</p>";
#> "<p>We need more Joels to help us!</p>"
Complex (curly) syntax
은 복잡하기 때문에 호출되는 것이 아니라 ' 복잡한 표현식 '을 사용할 수 있기 때문입니다.Complex (curly) syntax
에 대해 자세히 읽어보십시오.