> 백엔드 개발 > PHP 튜토리얼 > PHP_php 스킬의 sprintf 함수 사용법에 대한 자세한 설명

PHP_php 스킬의 sprintf 함수 사용법에 대한 자세한 설명

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
풀어 주다: 2016-05-16 20:32:03
원래의
2164명이 탐색했습니다.

이 기사의 예에서는 PHP에서 sprintf 함수를 사용하는 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 구체적인 사용량 분석은 다음과 같습니다.

PHP의 sprintf() 함수는 공식적으로 문자열의 형식을 지정하고 출력합니다. 이 글에서는 sprintf() 함수를 학습할 때 공유하는 몇 가지 경험을 소개하겠습니다.

PHP 함수 sprintf() 함수의 공식 정의는 다음과 같습니다. sprintf(): 형식화된 문자열을 변수에 씁니다

구문은 다음과 같습니다: sprintf(format,arg1,arg2,arg);

매개변수:

형식: 필수, 형식 변환

arg1: 필수, 형식 문자열

의 첫 번째 % 기호에 삽입되는 매개변수를 지정합니다.

arg1: 선택 사항, 형식 문자열의 두 번째 % 기호에 삽입되는

매개변수를 지정합니다.

arg1: 선택 사항, 형식 문자열의 세 번째, 네 번째 등 % 기호에 삽입되는 매개변수를 지정합니다.

매개변수 형식의 변환 형식은 퍼센트 기호(%)로 시작하고 변환 문자로 끝납니다.

%% – 백분율 기호를 반환합니다.

%b – 이진수

%c – ASCII 값에 따른 문자

%d – 부호 있는 십진수

%e – 연속 계산(예: 1.5e 3)

%u – 부호 없는 십진수

%f – 부동 소수점 숫자(로컬 설정 인식)

%F – 부동 소수점 숫자(로컬 설정을 인식하지 않음)

%o – 8진수

%s – 문자열

%x – 16진수(소문자)

%X – 16진수(대문자)

다음은 몇 가지 데모입니다. 코드는 다음과 같습니다.

코드 복사 코드는 다음과 같습니다.
/// 1. %%: %%를 %로 대체
$str = '%% 매개변수가 무엇으로 대체될지 테스트하세요'; 에코 스프린트($str)
//결과 반환: % 매개변수가 무엇으로 바뀔지 테스트합니다(%%가 %로 대체됨)
// 2. %b: 이 매개변수는 정수 데이터만 대체할 수 있습니다. 부동 소수점 형식인 경우 정수 부분만 가져오고 소수점 이하의 데이터는 무시됩니다. 정수가 아닌 데이터인 경우. 0을 반환

$str = '%b 매개변수는 이진수로 대체됩니다.'
$arg = '10'
에코 스프린트($str,$arg)
//반환 결과: 매개변수 1010이 이진수로 대체됩니다.
$arg = 10.23
에코 스프린트($str,$arg)
//반환 결과: 매개변수 1010이 이진수로 대체됩니다.
$arg = 'abc'
에코 스프린트($str,$arg)
//반환 결과: 매개변수 0이 이진수로 대체됩니다.

// 3. %c는 문자 인코딩의 ASCII 코드를 반환합니다.

$arg = 65
$str = "{$arg} 숫자에 해당하는 ASCII 코드는 %c입니다. "; 에코 스프린트($str,$arg)
//반환 결과: 숫자 65에 해당하는 ASCII 코드는 A

// 4. %d는 문자의 %d를 int 유형으로 대체합니다. 데이터 요구 사항은 $b
와 동일합니다. $str = 'ID번호는 %d'입니다
$arg = -3; 에코 스프린트($str,$arg)
//반환 결과: ID 번호는 -3
$arg = 4.5
에코 스프린트($str,$arg)
//반환결과 : ID번호는 4
$arg = 'abc'
에코 스프린트($str,$arg)
//반환결과 : ID번호는 0

// 5. %s - 문자열
$str = "테스트에 사용된 sprintf 문자열(%s)입니다. 오늘 %f위안을 썼습니다. 종탑에서 샤오자이까지 %d개의 역이 있습니다. 출근하세요"; $arg = '%s'
에코 스프린트($str,$arg,6,5); //결과 반환: 테스트에 사용된 sprintf 문자열(%s)입니다. 오늘 6000000위안을 썼습니다. 종루에서 샤오자이까지는 5정거장입니다. 출근하세요

다른 매개변수에 대해서는 테스트해 볼 수 있습니다.

이 함수의 몇 가지 용도에 대해 이야기해 보겠습니다. 예를 들어 데이터 테이블에 있는 모든 데이터의 여러 필드를 업데이트할 때 루프 업데이트를 사용하면 많은 리소스가 소모됩니다. 여기서는 sprintf( )를 사용합니다. 기능입니다.

데이터베이스를 일괄적으로 업데이트할 때 주로 end 때 case then 구문을 사용합니다.

코드 복사

코드는 다음과 같습니다.UPDATA 테이블 SET 필드 = CASE ID WHEN 1 THEN '값1' WHEN 2 THEN '값2'
WHEN 3 THEN '값3'
끝  
WHERE id IN (1,2,3)

위의 의미는 테이블을 업데이트하고 id = 1의 값을 value1로, id = 2의 값을 value2로, id = 3의 값을 value3으로 설정한다는 것입니다. 이러한 방식으로 매개변수 위의 함수는 다음과 같이 됩니다. sql 문을 이러한 SQL 문으로 결합합니다. 일괄 업데이트에는 하나의 SQL만 사용할 수 있습니다.
코드 복사 코드는 다음과 같습니다.
//예를 들어 id에 해당하는 값은 다음과 같은 배열입니다. 🎜> $info = array(1=>'장산',2=>'이시',3=>'왕우')
$ids = implode(',',array_keys($info)) //모든 ID 문자열 가져오기
//결합SQL
$sql = "UPDATA 사용자 SET 사용자 이름 = CASE ID"
foreach($info as $id=>$username){
$sql .= sprintf("WHEN %d THEN %s",$id,$username)
}
$sql .= "ID IN($ids)에서 종료"; // $model->query($sql)

위에서는 일괄 업데이트 작업을 완료할 수 있으며, 다음 where 절을 사용하면 3행의 데이터만 실행되도록 보장합니다.

이 기사가 모든 사람의 PHP 프로그래밍 설계에 도움이 되기를 바랍니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿