다음 코드가 있습니다.
$data = "Normal text
    code
    code
    code
Normal text";
$data = nl2br($data);
$data= explode('<br />', $data );
foreach($data as $value){
if(preg_match('/^    /',$value)){
echo 'code';
echo '<br />';
}else{
echo 'Not code';
echo '<br />';
}
}
각 줄이 4 개의 공백으로 시작하는지 확인하고 만약 그렇다면 '코드'로 에코하고 싶지 않으면 '코드 아님'으로 에코하고 싶습니다. 그러나 두 번째, 세 번째 및 네 번째 줄이 4 개의 공백으로 시작하지만 출력이 '코드 없음'으로 표시됩니다. 나는 내가 뭘 잘못했는지 알 수 없다. 제발 도와주세요.
문자열 앞의 줄 바꿈을 제거하기 위해 trim ()을 추가했습니다.
nl2br 교체 \n
하여 <br />\n
(또는 <br />\r\n
등등 spliting 경우) <br />
가 \n
제 문자로 남겨
<?php
$data = "Normal text
    code
    code
    code
Normal text";
$data = nl2br($data);
$data= explode('<br />', $data );
foreach($data as $value)
{
if(preg_match('/^    /', trim($value)))
{
echo 'code';
}
else
{
echo 'Not code';
}
echo '<br />';
}
?>
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다