(PHP 5, PHP 7)
mysqli::set_local_infile_handler -- mysqli_set_local_infile_handler — ���� LOAD DATA LOCAL INFILE ����Ļص�����
���������
���̻����
���� LOAD DATA LOCAL INFILE ����Ļص�����
�ص������������Ƕ�ȡ LOAD DATA LOCAL INFILE ����ָ�����ļ��� ���ҽ������¸�ʽ���� ���õĸ�ʽ������ LOAD DATA INFILE �������ʶ��ĸ�ʽ��
���ص�������Ҫ�� LOAD DATA ����ָ���ĸ�ʽƥ�䡣
link
���Թ��̻���ʽ����mysqli_connect() �� mysqli_init() ���ص����ӱ�ʶ��
read_func
һ���ص����������߶���ķ���������Ҫ�������²�����
stream
�� SQL �����е� INFILE ������ PHP ��
&buffer
������������������д֮�����ݵ��ַ���������
buflen
�������д洢�������ַ�����
&errormsg
�����������������������洢һЩ������Ϣ
�������ɹ�����ص�������Ҫ���� buffer
�д洢���ַ�������
�������ʧ�ܣ�
����һ��������
�ɹ�ʱ���� TRUE
�� ������ʧ��ʱ���� FALSE
��
Example #1 mysqli::set_local_infile_handler() ����
���������
<?php
$db = mysqli_init();
$db->real_connect("localhost","root","","test");
function callme($stream, &$buffer, $buflen, &$errmsg)
{
$buffer = fgets($stream);
echo $buffer;
// ���ַ����滻�ɴ�д�����ҽ� "," �ָ����滻�� [TAB]
$buffer = strtoupper(str_replace(",", "\t", $buffer));
return strlen($buffer);
}
echo "Input:\n";
$db->set_local_infile_handler("callme");
$db->query("LOAD DATA LOCAL INFILE 'input.txt' INTO TABLE t1");
$db->set_local_infile_default();
$res = $db->query("SELECT * FROM t1");
echo "\nResult:\n";
while ($row = $res->fetch_assoc()) {
echo join(",", $row)."\n";
}
?>
���̻����
<?php
$db = mysqli_init();
mysqli_real_connect($db, "localhost","root","","test");
function callme($stream, &$buffer, $buflen, &$errmsg)
{
$buffer = fgets($stream);
echo $buffer;
// ���ַ����滻�ɴ�д�����ҽ� "," �ָ����滻�� [TAB]
$buffer = strtoupper(str_replace(",", "\t", $buffer));
return strlen($buffer);
}
echo "Input:\n";
mysqli_set_local_infile_handler($db, "callme");
mysqli_query($db, "LOAD DATA LOCAL INFILE 'input.txt' INTO TABLE t1");
mysqli_set_local_infile_default($db);
$res = mysqli_query($db, "SELECT * FROM t1");
echo "\nResult:\n";
while ($row = mysqli_fetch_assoc($res)) {
echo join(",", $row)."\n";
}
?>
�������̻������
Input: 23,foo 42,bar Output: 23,FOO 42,BAR