���������

ԴĿ¼����

һ�����͵� PDO ��������ԴĿ¼����������ʾ������ SKEL ��ʾ����������Ҫ���ӵ������ݿ�����Ƶ���д��ʽ��

pdo_SKEL/          
  config.m4                  # unix �����ű�
  config.w32                 # win32 �����ű�
  CREDITS
  package.xml                # �йذ���Ԫ��Ϣ
  pdo_SKEL.c                 # ��׼ PHP ��չ
  php_pdo_SKEL.h
  php_pdo_SKEL_int.h         # ��������˽��ͷ�ļ�
  SKEL_dbh.c                 # ���� PDO ����������ӿڵ�ʵ��
  SKEL_stmt.c                # ���� PDO �����ӿڵ�ʵ��
  tests/

�Ժ��ڱ��ĵ��в�����Щ�ļ������ݡ�

����һ���������

��򵥵ķ�������ʹ�� PHP Ŀ¼���е� ext Ŀ¼�µ� ext_skel Shell �ű����⽫���ɰ����ܶ������г����ļ��Ļ������Ŀ¼��ͨ��ִ���������������:

./ext_skel --extname=pdo_SKEL

�⽫����һ����Ϊpdo_SKEL������������ļ���Ŀ¼��Ŀ¼���ƿ����Զ��塣��Ŀ¼�����ƶ���PHP��չĿ¼֮�⡣PDO �� PECL ��һ����չ����Ӧ�ð����ڱ�׼��չĿ¼�С�ֻҪ���й�PHP��PDO�İ�װ����ͻ��뵽������Ŀ¼������

��׼�����ļ�

�����ض�ͷ�ļ�

ͷ�ļ� congfig.h �������ý��̸���ϵͳƽ̨����ʹ�õ������Զ����ɵġ������ͷ�ļ����ڣ�HAVE_CONFIG_H �����������������á��˱���Ӧ���ԣ�������ã����ļ���config.hӦ�ñ������ڱ��뵥Ԫ�ڡ�

PHP ͷ�ļ�

���±�׼�Ĺ����� PHP ͷ�ļ�Ӧ������ÿ��Դģ���У�

  1. php.h

  2. php_ini.h

  3. ext/standard/info.h

PDO �ӿ�ͷ�ļ�

���±�׼�Ĺ����� PDO ͷ�ļ�ҲӦ�ð�����ÿ��Դģ���У�

pdo/php_pdo.h

��ͷ�ļ��������������г�ʼֵ�͹رչ��ܵĶ��ļ�PDOȫ�ֱ����Ķ��塣

pdo/php_pdo_driver.h

��ͷ�ļ�������������дPDO������������ͺ�API�����������˵��÷��ص�PDO��ķ���ǩ����ע��/ע��PDO������������Ҫ���ǣ���ͷ�ļ����� PDO �����ݿ������������Ͷ��塣�����������������Ҫ�ṹ pdo_dbh_t �� pdo_stmt_t������ϸ����������ĸ�¼ A �� B��

���������ض���ͷ�ļ�

���͵�PDO�����������������ض������ݿ�ʵ��ͷ�ļ����Ⲣ���ų�ʹ���ϸ����ȡ����ʵ�֡����չ����������о���������ͷ�ļ�:

php_pdo_SKEL.h

��ʵ������һ�����������ݺ�ǰ�涨���ר��Ϊ�������ݿⶨ�Ƶ�pdo/php_pdo.h��ȫ��ͬ��ͷ�ļ�������������������Ҫʹ��ȫ�ֱ�������ô����Ӧʹ��ZEND_BEGIN_MODULE_GLOBALS �� ZEND_END_MODULE_GLOBALS�������塣 Ȼ���ú���������Щ��������Щ��ͨ��������ΪPDO_SKEL_G(v)������v��ʾ�����ʵ�ȫ�ֱ�����������Ϣ�������Zend programmer�ĵ���

php_pdo_SKEL_int.h

��ͷ�ļ�ͨ�������ض�����������ʵ�ֵ����Ͷ���ͺ������������⣬��������pdo_SKEL_handle �� pdo_SKEL_stmt�ṹ��DB�ľ��嶨�塣��Щ���DZ�driver_data�����õľ�������ṹ��Ա��˽�����ݽṹ��

��ѡͷ�ļ�

����ʵ�������һ���ض����������������Ҫ��������ͷ�ļ�:

#include <zend_exceptions.h>