>백엔드 개발 >PHP 튜토리얼 >PHP 면접 질문 - 대기업에서 나왔다고 합니다

PHP 면접 질문 - 대기업에서 나왔다고 합니다

WBOY
WBOY원래의
2016-07-25 08:59:171104검색
  1. $arr1 = array (
  2. '0' => array ('fid' => 1, 'tid' => 1, '이름' =>'Name1' ),
  3. '1' => 배열 ('fid' => 1, 'tid' => 2 , 'name' =>'Name2' ),
  4. ' 2' => 배열('fid' => 1, 'tid' => 5 , 'name' =>'Name3' ),
  5. '3' => 배열('fid' => ; 1, 'tid' => 7 , 'name' =>'Name4' ),
  6. '4' => 배열 ('fid' => 3, 'tid' => 9, ' name' =>'Name5' )
  7. );
  8. $arr2 = array (
  9. '0' => array (
  10. '0' => array ( 'tid' => 1, '이름' => '이름1'),
  11. '1' => 배열( 'tid' => 2, '이름' => '이름2'),
  12. '2' = > 배열( 'tid' => 5, 'name' => 'Name3'),
  13. '3' => 배열( 'tid' => 7, 'name' => 'Name4 ')
  14. ),
  15. '1' => 배열 (
  16. '0' => 배열 ( 'tid' => 9, 'name' => 'Name5' )
  17. )
  18. );
코드 복사

5. 데이터베이스 설계의 패러다임과 응용에 대해 간략하게 설명해주세요. 일반적으로 테이블 구조를 최적화하는 데는 3차 정규형이면 충분합니다. 이렇게 하면 애플리케이션이 너무 복잡해지는 것을 방지할 수 있을 뿐만 아니라 너무 큰 SQL 문으로 인해 발생하는 시스템의 비효율성도 방지할 수 있습니다.

6. 테이블에 ID의 레코드가 여러 개 있습니다. 이 ID의 모든 레코드를 찾아 총 레코드 수를 표시합니다. 이를 구현하려면 SQL 문, 뷰 및 저장 프로시저를 사용하세요.

  1. DELIMITER //

  2. 프로시저 생성 ProcGet
  3. (
  4. IN ID_a INT(11)
  5. )

  6. BEGIN

  7. SQLEXCEPTION BEGIN END에 대한 EXIT 핸들러 선언;
  8. SELECT COUNT(*) AS Sum FROM News Where ID = ID_a;
  9. END;//< ;/p>
  10. CALL ProcGet(88)//

코드 복사

7, table SQL 문을 사용하여 구현된 세 개의 열 A, B, C가 있습니다. A 열이 B 열보다 크면 A 열을 선택하고, 그렇지 않으면 B 열을 선택하고, B 열이 C 열보다 크면 B 열을 선택합니다. 그렇지 않으면 C열을 선택하세요.

  1. DELIMITER //

  2. 프로시저 생성 ProcOut()
  3. BEGIN
  4. SQLEXCEPTION BEGIN END에 대한 종료 핸들러 선언 ;
  5. DECLARE Sum_a INT(11);
  6. DECLARE Sum_b INT(11);
  7. DECLARE Sum_c INT(11);

  8. -- 값 가져오기 ​​A 열의 총 값<--

  9. DECLARE cur_1 CURSOR FOR SELECT SUM(A) FROM table_name;
  10. OPEN cur_1;
  11. FETCH cur_ 1 INTO Sum_a;
  12. CLOSE cur_1;

  13. --B열의 전체 값 가져오기DECLARE cur_2 CURSOR FOR SELECT SUM(B) FROM table_name;

  14. OPEN cur_2;
  15. FETCH cur_ 2 INTO Sum_b;
  16. CLOSE cur_2;

  17. -- C 열의 전체 값을 가져옵니다.<--

  18. DECLARE cur_3 CURSOR FOR SELECT SUM(C) FROM table_name;
  19. OPEN cur_3;
  20. cur_ 3 INTO Sum_c;
  21. CLOSE cur_3;

  22. IF Sum_a > Sum_b THEN

  23. SELECT A FROM table_name;

  24. < p>ELSEIF Sum_b > Sum_c THEN
  25. SELECT B FROM table_name;

  26. ELSE

  27. SELECT C FROM table_name;
  28. END IF;;
  29. END;/ /

  30. CALL ProcOut()//

코드 복사

8해주세요. 프로젝트에서 SQL문의 실행 효율성을 최적화하는 방법을 간략하게 설명하면, 어떤 측면에서 SQL문의 성능을 분석할 수 있나요? 9. 템플릿이 스마트 템플릿인 경우. $data라는 배열을 표시하기 위해 section 문을 사용하는 방법. 예를 들어:

  1. $data = array(
  2. [0] => array( [id]=8 [name]='name1')
  3. [1] => 배열( [id]=10 [이름]='name2')
  4. [2] => 배열( [id]=15 [이름]='name3')
  5. .. ....
  6. )
코드 복사

템플릿 페이지에 코드를 작성하시겠습니까? foreach 문을 사용하는 경우 어떻게 표시합니까?

10. 폴더의 모든 파일과 하위 폴더를 탐색할 수 있는 함수를 작성하세요. (디렉토리 운영)

11, 테이블 2개, 도시 테이블, 지방 테이블. 각각 시와 도 간의 관계 테이블입니다.

도시: id City Provinceid 1 광저우 1 2 심천 1 3 후이저우 1 4 창사 2 5 우한 3 ......광주 주: 이드 주 1 광동 2 후난 3 후베이 ......

(1) 두 테이블을 연관시키는 SQL 문을 작성하여 도시의 기본 정보를 표시합니다. ? (2) 표시 필드: 도시 ID, 도시 이름, 지방. 좋다: Id(도시 ID) Cityname(도시 이름) Privence(지방) . . . .

(2) 각 도에 도시가 몇 개인지 알고 싶으시면 그룹별 쿼리를 이용해주세요. ? 표시 필드: 지방 ID, 지방 이름, 포함된 도시 수.

12. 귀하의 경험을 바탕으로 소프트웨어 공학 분야의 소프트웨어 개발 단계를 간략하게 설명해주세요. Rational Rose, PowerDesigner, Project, VSS 또는 CVS, TestDirector 중 어떤 도구를 사용해 보셨나요? 단점은 무엇입니까? 13. 운영체제에서 쓰레드와 프로세스의 차이점을 간략하게 설명해주세요. LINUX에서 사용한 소프트웨어를 나열하십시오. 14. 다음 데이터 세트를 정렬하려면 데이터 구조 버블 정렬 방법과 결합된 의사 언어를 사용하십시오. 10 2 36 14 10 25 23 85 99 45.



성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.