流水的个人博客网络学院作者家园 PHP基础知识学习笔记

1  /  1  页   1 跳转 查看:1105

PHP基础知识学习笔记

PHP基础知识学习笔记

PHP基础知识学习笔记
1.
PHP
Hypertext Preprocessor
超文本预处理程序
PHP is an HTML-embedded scripting language. Much of its syntax is borrowed from C, Java and Perl with a couple of unique PHP-specific features thrown in. The goal of the language is to allow web developers to write dynamically generated pages quickly.
内嵌语言 PHP 它的语法借鉴了 C, Java 和 Perl,同时也自创了一些 PHP 特有的功能。
Linux + Apache + PHP 和 Windows + IIS + ASP or ASP.net 是当前 Web 动态网页的两大阵营
PHP 通常搭配 Apache HTTP Server 一起使用,但它也可以和 Windows IIS 一起使用。
2.
输出 echo
变量 $txt
字符串 'i\'m a girl'
\' 来表示单引号'
在其它情况下,反斜杠不起转义作用,比如 \n,还是会显示 \n。
双引号指定字符串
用双引号指定字符串比用单引号允许更多转义。如果你需要更多转义,推荐用双引号来指定字符串。
转义符号 说明
\n 换行(LF 或 ASCII 字符 0x0A(10))
\r 回车(CR 或 ASCII 字符 0x0D(13))
\t 水平制表符(HT 或 ASCII 字符 0x09(9))
\\ 反斜线
\$ 美元符号
\" 双引号
\[0-7]{1,3} 此正则表达式序列匹配一个用八进制符号表示的字符
\x[0-9A-Fa-f]{1,2} 此正则表达式序列匹配一个用十六进制符号表示的字符
一个是连接运算符.,用来连接两个字符串;一个是连接赋值运算符.=
echo "Hello "."World"
$a ="good";$a .=" for you";

3.
PHP注释
单行注释语法 //
多行注释语法
/*
这是多行注释
这是多行注释
*/
4.类型
PHP 语言有8种基本类型。这8种基本类型又分成三类:标量类型,复合类型和特殊类型。
标量类型 (scalar types)
布尔 (boolean)
整数 (integer)
浮点数 (即小数,float 或者 double)
字符串 (string)
复合类型 (compound types)
数组 (array)
对象 (object)
特殊类型 (special types)
资源 (resource)
NULL (NULL)
$a =1; //整数类型$b =8.26; //浮点数类型
数组:
echo $a[0];
$a = array("orange", "apple","peach");
$a = array(0=>"orange", 1=>"apple",2=>"peach");
上面两句代码效果是一样的,第一句没有指定数组的 key,系统就自动给数组的每个值加 key,key 的值从0开始每次加1。第二句代码,是在定义数组的时候,给数组的每个值加赋予对应的 key。
数组的 key 还可以用字符串表示
$a = array("os"=>"Windows XP", "lang"=>"Chinese","sp"=>"Service Pack 3");
修改数组
增加一个数组元素的语法:
$array_name[key] = value
删除一个数组元素,使用 unset 函数,语法如下:
unset($array_name[key])
遍历:
<?php
$a = array(a=>100, b=>200,d=>500);
$a["c"] = 300;  unset($a["b"]);
foreach ($a as $key=> $value)
{  echo $key.": ".$value."<br />";
}
?>

算术运算符 (Arithmetic Operators)
运算符 说明 示例 结果
+ 加 2+2
$a + $b
4
变量$a 和 $b 的和

- 减 3-2


$a - $b
1
变量$a 和 $b 的差

* 乘 3*2
$a * $b
6
变量$a 和 $b 的乘积

/ 除 3/2
$a / $b
1.5
变量$a 除以 $b 的结果

% 余数 3/2
$a % $b
1
变量$a 除以 $b 的余数

赋值运算符 (Assignment Operators) =
比较运算符 (Comparison Operators)
运算符 说明 示例
== 等于 6==6 返回 TRUE
!= 不等于 7!=8 返回 TRUE
< 小于 8<7 返回 FALSE
> 大于 8>7 返回 TRUE
<= 小于等于 8<=9 返回 TRUE
>= 大于等于 8>=9 返回 FALSE

逻辑运算符 (Logical Operators)
运算符 说明 示例
&& and 与 $a && $b
如果 $a 和 $b 都为 TRUE,返回TRUE

|| or 或 $a || $b
如果 $a,$b 中任何一个为 TRUE,返回 TRUE

! not 非 !$a
如果 $a 不是TRUE,返回 TRUE

xor xor 或异 $a xor $b
如果 $a,$b 中任何一个为 TRUE,但不同时为 TRUE,返回 TRUE

++ 递增 $a++,返回$a,然后将$a的值加1
++$a,$a的值加1,然后返回$a

-- 递减 $a--,返回$a,然后将$a的值减1
--$a,$a的值减1,然后返回$a

字符串运算符 (String Operators)
字符运算符有2个。一个是连接运算符.,用来连接两个字符串;一个是连接赋值运算符.=,它将右边参数附加到左边的参数后。示例如下:
运算符 示例 结果
. "Hello"."World" HelloWorld
.= $a="Hello";
$a.="World";
$a.="World" 相当于$a = $a."World"
$a 的值为 HelloWorld

赋值运算符和算术运算符的结合使用
运算符组合 示例 说明
+= $a += 3 $a = $a + 3
-= $a -= 3 $a = $a - 3
*= $a *= 3 $a = $a * 3
/= $a /= 3 $a = $a / 3
%= $a %= 3 $a = $a % 3
条件语句语法:
<?php if ($a > $b)  echo "a is bigger than b"; ?>
if (expr)
  statement
elseif (expr)
  statement
else
  statement
switch (expression){case value:  statement  break;  case value:  statement  break;[default:  statement^]}

$a=1;while($a<=5)  {  echo "The number is " . $a . "<br />";  $a++;  }?>

<?php $i=0;do  {  $i++;  echo "The number is " . $i . "<br />";  }while ($i<5);?>

<?php for ($i=1; $i<=5; $i++){  echo $i ;}?>
<?php $a = array("orange", "apple","peach");foreach ($a as $value){  echo $value."<br />";}?>
PHP函数
function getsum($a,$b)
{
  $sum = $a + $b;  return $sum; }
没有参数,没有返回值的函数示例
function sayhello() {  echo "hello";}
全局变量 (global variables)和局部变量 (local variables)
我们将函数内部的变量称为局部变量 (local variables)。通常它只作用于该函数内部,只能在函数内部被访问到,它不影响函数外的代码。
在函数外部的变量,我们称为全局变量 (global variables)。通常它作用在函数外部。它不影响函数内部。
<html><body><?php $a = "Boston Legal";function getA(){  $a ="House";  return $a;}echo $a."<br />";echo getA();?></body></html>
返回的结果是:
Boston LegalHouse

在函数内部访问全局变量
如果你想在函数内部也能访问到某个全局变量,可以使用$GLOBALS,$GLOBALS 是个 PHP 超全局变量。示例如下:
<html><body><?php $a = "Boston Legal";function getA(){  $a ="House"."<br />".$GLOBALS['a'];  return $a;}echo getA();?></body></html>
PHP内部函数
PHP 本身提供了很多内部函数 (Internal functions),也称为内置函数 (built-in functions),这一章节,我们主要介绍一些常用的 PHP 内置函数。

echo 和 print
详见 PHP echo 和 PHP echo 和 print的区别。
strlen
strlen 函数能得到一个字符串的长度。下面的示例中,得到的变量 $a 的长度为 8。
$a = ' abcdef ';echo strlen($a); //8
trim
trim 函数的功能是将字符串的两边的空格都去掉。比如下面示例中变量 $a 的值是 ' abcdef ',字符串两边各有一个空格, trim 之后,由于去掉字符串两边的两个空格,字符串的长度就是6。
$a = ' abcdef ';
echo strlen(trim($a)); //6
ltrim
ltrim 函数的功能是将字符串左边的空格去掉。
echo 'nice',' try'; //nice try
echo 'nice',ltrim(' try'); //nicetry
rtrim
rtrim 函数的功能是将字符串右边的空格去掉。
echo 'a ', 'b'; //a becho rtrim('a '),'b'; //ab
substr
通过 substr 函数可以得到字符串的一部分。substr 函数语法如下:
substr(string,start,length)
意思是从字符串 string 的 start 位置开始,截取长度为 length 的字符串。字符串 string 的第一个字符的位置是0,而不是1。示例如下:
echo substr('blablar.com',0,3); //bla
上面示例表示,从字符串第一个字符开始,截取3个字符,返回结果是 bla。
echo substr('blablar.com',3,5); //blar.
上面示例的意思是从字符串 blablar.com 的第四个字符开始,截取5 个字符,得到结果是 blar.。
你也可以不写参数 length,表示从 start 位置开始截取后面所有的的字符串,比如:
echo substr('blablar.com', 3); //blar.com
strtolower
strtolower 的功能是将字符串全部变成小写。示例如下:
echo strtolower('BlaBlar.COM');//blablar.com
strtoupper
strtoupper 和 strtolower 相反,功能是将字符串都变成大写。示例如下:
echo strtoupper('china'); //CHINA
str_replace
str_replace 的作用是替换字符串。str_replace 函数的语法如下:
str_replace(search,replace,subject)
意思是在 subject 字符串中,找到任何符合 search 的字符串,然后用 replace 代替所有 search 字符串。
示例如下:
echo str_replace("bla","CHA","blablar"); //CHACHAr
上面的例子中,用 CHA 替代 blablar 字符串中所有的 bla ,返回的结果是CHACHAr。
echo 和 print 的作用都是输出字符串。echo 和 print 之间主要的区别在于:
速度
返回值
表达式
参数
速度
echo 的速度比 print 快,因为 echo 没有返回值。
返回值
echo 没有返回值;print 有返回值,print 的返回值总是1。
表达式
print 可以用于复杂的表达式,而 echo 不可以。比如 print 可以用于如下示例:
<html><body><?php$a=true;$a ? print "true":print "false";?></body></html>
参数
echo 可以有多个参数,而 print 只能有一个参数。
echo 如果有多个参数,应用逗号分隔,每个参数没有必要加小括号,正确写法如下:
echo "good ","for ","you";
注意,如果 echo 有多个参数,只用一个小括号将所有参数围起来,是错误的写法。下面的写法是错误的:
echo ("good ","for ","you");
print 只能有一个参数,比如:
print ("good for you");
print "good for you";
数学计算内部函数:
一般的计算,我们可以通过运算符解决,比如加减乘除等。使用 PHP 的数学计算内部函数,可以帮助我们解决一些比较复杂的计算。下面主要讲述 round, floor, ceil, pow, rand,max, min, decbin, bindec, dechex, hexdec, decoct, octdec 函数。
round
round - 对浮点数进行四舍五入。round 函数语法如下:
round(float,precision)
其中参数 precision 表示小数点后面要保持的精度位数。如果不写参数 precision,表示四舍五入到整数位,比如:
echo round(3.4);        // 3echo round(3.5);        // 4echo round(3.6);        // 4
如果 precision 为2,表示四舍五入到小数点后2位。示例如下:
echo round(1.95583, 2);  // 1.96
如果参数 precision 为负数,表示四舍五入到小数点前。比如:
echo round(1241757, -3); // 1242000
floor
floor - 舍去法求整。floor 函数语法如下:
floor (value)
floor 函数返回不大于 value 的最大整数,即将 value 的小数部分舍去取整。示例如下:
echo floor(4); //4
echo floor(4.3);  // 4echo floor(9.999); // 9
ceil
ceil - 进一法取整。ceil 函数语法如下:
ceil (value)
ceil 函数返回不小于 value 的最小整数。示例如下:
echo ceil(4);      //4
echo ceil(4.3);    // 5echo ceil(9.999);  // 10
pow
pow - 求幂。pow 函数的语法如下:
pow (base,exp)
pow 函数返回 base 的 exp 次方的幂。下面的示例表示求 2 的8 次方,返回结果是256。
echo pow(2, 8); // 256
rand
rand - 产生一个随机整数。rand 函数语法如下:
rand (min,max)
rand 函数返回一个介于最小值 min 和最大值 max 之间 (包括min, max) 的随机整数。比如下面示例返回一个 2 到 6 之间的随机整数。
echo rand(2,6);
max
max - 返回参数中数值最大的值。
如果 max 函数只有一个参数且为数组,max 返回该数组中最大的值。
max 函数示例如下:
echo max(1, 3, 5, 6, 7);  // 7echo max(array(2, 4, 5)); // 5
min
min - 返回参数中的最小值。
如果 min 函数只有一个参数且为数组,min 返回该数组中最小的值。
min 函数示例如下:
echo min(1, 3, 5, 6, 7);  // 1echo min(array(2, 4, 5)); // 2
decbin
decbin - 十进制转换为二进制。decbin 函数语法如下:
decbin (number)
decbin 返回一个字符串,即返回参数 number 的二进制表示。示例如下:
echo decbin(12);
decbin(12) 返回的结果是:
1100
bindec
bindec - 二进制转换成十进制。bindec 函数语法如下:
bindec (binary_string)
bindec 函数将二进制字符串 binary_string 转换成一个十进制整数。示例如下:
echo bindec('110011'); //51
dechex, hexdec
dechex - 十进制转换为十六进制。
hexdec - 十六进制转换为十进制。
dechex, hexdec 函数示例如下:
echo dechex(47); //2f
echo hexdec('2f'); //47
decoct, octdec
decoct - 十进制转换为八进制
octdec - 八进制转换为十进制
decoct,octdec 函数示例如下:
echo decoct(12); //14
echo octdec('14'); //12
本章讲述几个常用的 PHP 数组内部函数。
在前面我们已经介绍过PHP 数组,创建一个数组用 array() 函数,删除一个数组元素用 unset() 函数。本章节我们还要学习一些其它常用的有关数组的内部函数。
count,sizeof
count - 返回一个数组的元素个数。sizeof 是 count 的别名,功能和 count 一样,也是返回一个数组的元素个数。
count 函数示例如下,下面的示例中,输出数组个元素个数,为6。
<?php$a = array(1,2,4,5,3,9);echo count($a); //6?>
sort
sort - 给一个数组的元素排序。排序后,数组各元素原来的 key 也因为排序而改变。sort 函数示例如下:
<html><body><?php$a = array(1,2,4,5,3,9);echo "before sorting: <br />";foreach ($a as $key=>$value){  echo "a[$key]: $value <br />";}sort($a);echo "after sorting: <br />";foreach ($a as $key=>$value){  echo "a[$key]: $value <br />";}?></body></html>
返回的显示结果是:
before sorting:a[0]: 1a[1]: 2a[2]: 4a[3]: 5a[4]: 3a[5]: 9after sorting:a[0]: 1a[1]: 2a[2]: 3a[3]: 4a[4]: 5a[5]: 9
asort
asort - 给数组的元素排序,保留每个元素原来的key。
我们将上面的示例中的 sort($a) 改成 asort($a),得到的结果是:
before sorting:a[0]: 1a[1]: 2a[2]: 4a[3]: 5a[4]: 3a[5]: 9after sorting:a[0]: 1a[1]: 2a[4]: 3a[2]: 4a[3]: 5a[5]: 9
ksort
ksort - 根据 key 的大小给数组每个元素排序。ksort 函数示例如下:
<html><body><?php$fruits = array("d"=>"lemon", "a"=>"orange", "b"=>"banana", "c"=>"apple");ksort($fruits);foreach ($fruits as $key => $val) {    echo "$key : $val <br />";}?> </body></html>
返回的结果如下:
a : orangeb : bananac : appled : lemon
出处: http://www.blabla.cn/php/php_array_functions.html
 

回复:PHP基础知识学习笔记

addslashes
(PHP 3, PHP 4, PHP 5)

addslashes -- 使用反斜线引用字符串
描述
string addslashes ( string str )


返回字符串,该字符串为了数据库查询语句等的需要在某些字符前加上了反斜线。这些字符是单引号(')、双引号(")、反斜线(\)与 NUL(NULL 字符)。

一个使用 addslashes() 的例子是当你要往数据库中输入数据时。例如,将名字 O'reilly 插入到数据库中,这就需要对其进行转义。大多数据库使用 \ 作为转义符:O\'reilly。这样可以将数据放入数据库中,而不会插入额外的 \。当 PHP 指令 magic_quotes_sybase 被设置成 on 时,意味着插入 ' 时将使用 ' 进行转义。

默认情况下,PHP 指令 magic_quotes_gpc 为 on,它主要是对所有的 GET、POST 和 COOKIE 数据自动运行 addslashes()。不要对已经被 magic_quotes_gpc 转义过的字符串使用 addslashes(),因为这样会导致双层转义。遇到这种情况时可以使用函数 get_magic_quotes_gpc() 进行检测。

例子 1. addslashes() 示例

<?php
$str = "Is your name O'reilly?";

// 输出:Is your name O\'reilly?
echo addslashes($str);
?>
 

回复:PHP基础知识学习笔记

call_user_func函数类似于一种特别的调用函数的方法,使用方法如下:
function a($b,$c)
{
echo $b;
echo $c;
}
call_user_func('a', "111","222");
call_user_func('a', "333","444");
//显示 111 222 333 444
?>

调用类内部的方法比较奇怪,居然用的是array,不知道开发者是如何考虑的,当然省去了new,也是满有新意的:
class a {
function b($c)
{
echo $c;
}
}
call_user_func(array("a", "b"),"111");
//显示 111
?>

call_user_func_array函数和call_user_func很相似,只不过是换了一种方式传递了参数,让参数的结构更清晰:
function a($b, $c)
{
echo $b;
echo $c;

}
call_user_func_array('a', array("111", "222"));
//显示 111 222
?>

call_user_func_array函数也可以调用类内部的方法的

Class ClassA
{

function bc($b, $c) {
    $bc = $b + $c;
  echo  $bc;
}
}
call_user_func_array(array('ClassA','bc'), array("111", "222"));

//显示 333
?>

call_user_func函数和call_user_func_array函数都支持引用,这让他们和普通的函数调用更趋于功能一致:
function a(&$b)
{
$b++;
}
$c = 0;
call_user_func('a', &$c);
echo $c;//显示 1
call_user_func_array('a', array(&$c));
echo $c;//显示 2
 

回复:PHP基础知识学习笔记

PHP Cookies



cookie 常用于识别用户。

什么是 Cookie?
cookie 常用于识别用户。cookie 是服务器留在用户计算机中的小文件。每当相同的计算机通过浏览器请求页面时,它同时会发送 cookie。通过 PHP,您能够创建并取回 cookie 的值。

如何创建 cookie?
setcookie() 函数用于设置 cookie。

注释:setcookie() 函数必须位于 <html> 标签之前。

语法
setcookie(name, value, expire, path, domain);
例子
在下面的例子中,我们将创建名为 "user" 的 cookie,把为它赋值 "Alex Porter"。我们也规定了此 cookie 在一小时后过期:

<?php setcookie("user", "Alex Porter", time()+3600);?><html><body></body></html>
注释:在发送 cookie 时,cookie 的值会自动进行 URL 编码,在取回时进行自动解码(为防止 URL 编码,请使用 setrawcookie() 取而代之)。

如何取回 Cookie 的值?
PHP 的 $_COOKIE 变量用于取回 cookie 的值。

在下面的例子中,我们取回了名为 "user" 的 cookie 的值,并把它显示在了页面上:

<?php// Print a cookieecho $_COOKIE["user"];// A way to view all cookiesprint_r($_COOKIE);?>
在下面的例子中,我们使用 isset() 函数来确认是否已设置了 cookie:

<html><body><?phpif (isset($_COOKIE["user"]))  echo "Welcome " . $_COOKIE["user"] . "!<br />";else  echo "Welcome guest!<br />";?></body></html>
如何删除 cookie?
当删除 cookie 时,您应当使过期日期变更为过去的时间点。

删除的例子:

<?php // set the expiration date to one hour agosetcookie("user", "", time()-3600);?>
 

回复:PHP基础知识学习笔记

测试环境:mysql 5.0.45
【注:可以在mysql中通过mysql> SELECT VERSION();来查看数据库版本】







一、连接MYSQL。

格式: mysql -h主机地址 -u用户名 -p用户密码

1、连接到本机上的MYSQL。

首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root -p,回车后提示你输密码.注意用户名前可以有空格也可以没有空格,但是密码前必须没有空格,否则让你重新输入密码.

如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是: mysql>

2、连接到远程主机上的MYSQL。假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。则键入以下命令:

mysql -h110.110.110.110 -u root -p 123;(注:u与root之间可以不用加空格,其它也一样)

3、退出MYSQL命令: exit (回车)



二、修改密码。

格式:mysqladmin -u用户名 -p旧密码 password 新密码

1、给root加个密码ab12。首先在DOS下进入目录mysql\bin,然后键入以下命令

mysqladmin -u root -password ab12

注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。

2、再将root的密码改为djg345。

mysqladmin -u root -p ab12 password djg345



三、增加新用户。
(注意:和上面不同,下面的因为是MYSQL环境中的命令,所以后面都带一个分号作为命令结束符)

格式:grant select on 数据库.* to 用户名@登录主机 identified by “密码”

1、增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用root用户连入MYSQL,然后键入以下命令:

grant select,insert,update,delete on *.* to test1@”%” Identified by “abc”;

但增加的用户是十分危险的,你想如某个人知道test1的密码,那么他就可以在internet上的任何一台电脑上登录你的mysql数据库并对你的数据可以为所欲为了,解决办法见2。

2、增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作(localhost指本地主机,即MYSQL数据库所在的那台主机),

这样用户即使用知道test2的密码,他也无法从internet上直接访问数据库,只能通过MYSQL主机上的web页来访问了。

grant select,insert,update,delete on mydb.* to test2@localhost identified by “abc”;

如果你不想test2有密码,可以再打一个命令将密码消掉。

grant select,insert,update,delete on mydb.* to test2@localhost identified by “”;

下篇我是MYSQL中有关数据库方面的操作。注意:你必须首先登录到MYSQL中,以下操作都是在MYSQL的提示符下进行的,而且每个命令以分号结束。

一、操作技巧

1、如果你打命令时,回车后发现忘记加分号,你无须重打一遍命令,只要打个分号回车就可以了。

也就是说你可以把一个完整的命令分成几行来打,完后用分号作结束标志就OK。

2、你可以使用光标上下键调出以前的命令。

二、显示命令

1、显示当前数据库服务器中的数据库列表:

mysql> SHOW DATABASES;

注意:mysql库里面有MYSQL的系统信息,我们改密码和新增用户,实际上就是用这个库进行操作。

2、显示数据库中的数据表:

mysql> USE 库名;
mysql> SHOW TABLES;

3、显示数据表的结构:

mysql> DESCRIBE 表名;

4、建立数据库:

mysql> CREATE DATABASE 库名;

5、建立数据表:

mysql> USE 库名;
mysql> CREATE TABLE 表名 (字段名 VARCHAR(20), 字段名 CHAR(1));

6、删除数据库:

mysql> DROP DATABASE 库名;

7、删除数据表:

mysql> DROP TABLE 表名;

8、将表中记录清空:

mysql> DELETE FROM 表名;

9、显示表中的记录:

mysql> SELECT * FROM 表名;

10、往表中插入记录:

mysql> INSERT INTO 表名 VALUES (”hyq”,”M”);

11、更新表中数据:

mysql-> UPDATE 表名 SET 字段名1=’a',字段名2=’b’ WHERE 字段名3=’c';

12、用文本方式将数据装入数据表中:

mysql> LOAD DATA LOCAL INFILE “D:/mysql.txt” INTO TABLE 表名;

13、导入.sql文件命令:

mysql> USE 数据库名;
mysql> SOURCE d:/mysql.sql;

14、命令行修改root密码:

mysql> UPDATE mysql.user SET password=PASSWORD(’新密码’) WHERE User=’root’;
mysql> FLUSH PRIVILEGES;

15、显示use的数据库名:

mysql> SELECT DATABASE();

16、显示当前的user:

mysql> SELECT USER();

三、一个建库和建表以及插入数据的实例

drop database if exists school; //如果存在SCHOOL则删除

create database school; //建立库SCHOOL

use school; //打开库SCHOOL

create table teacher //建立表TEACHER
(
id int(3) auto_increment not null primary key,
name char(10) not null,
address varchar(50) default ‘深圳’,
year date
); //建表结束

//以下为插入字段
insert into teacher values(”,’allen’,'大连一中’,'1976-10-10′);
insert into teacher values(”,’jack’,'大连二中’,'1975-12-23′);

如果你在mysql提示符键入上面的命令也可以,但不方便调试。

(1)你可以将以上命令原样写入一个文本文件中,假设为school.sql,然后复制到c:\\下,并在DOS状态进入目录\\mysql\\bin,然后键入以下命令:

mysql -uroot -p密码 < c:\\school.sql

如果成功,空出一行无任何显示;如有错误,会有提示。(以上命令已经调试,你只要将//的注释去掉即可使用)。

(2)或者进入命令行后使用 mysql> source c:\\school.sql; 也可以将school.sql文件导入数据库中。

四、将文本数据转到数据库中

1、文本数据应符合的格式:字段数据之间用tab键隔开,null值用\\n来代替.例:

3 rose 大连二中 1976-10-10

4 mike 大连一中 1975-12-23

假设你把这两组数据存为school.txt文件,放在c盘根目录下。

2、数据传入命令 load data local infile “c:\\school.txt” into table 表名;

注意:你最好将文件复制到\\mysql\\bin目录下,并且要先用use命令打表所在的库。



五、备份数据库:(命令在DOS的\\mysql\\bin目录下执行)

1.导出整个数据库

导出文件默认是存在mysql\bin目录下

mysqldump -u 用户名 -p 数据库名 > 导出的文件名

mysqldump -u user_name -p123456 database_name > outfile_name.sql

2.导出一个表

mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名

mysqldump -u user_name -p database_name table_name > outfile_name.sql

3.导出一个数据库结构

mysqldump -u user_name -p -d –add-drop-table database_name > outfile_name.sql

-d 没有数据 –add-drop-table 在每个create语句之前增加一个drop table

4.带语言参数导出

mysqldump -uroot -p –default-character-set=latin1 –set-charset=gbk –skip-opt database_name > outfile_name.sql
 

回复:PHP基础知识学习笔记

偶然对PHP运行错误的处理及显示有些体会,特此留下记录,方便查询。

首先是对php.ini几个关于错误处理的全局变量的说明:

•(1)、error_reporting


(3)、log_errors

•E_ALL - 所有的错误和警告

•E_ERROR - 致命性运行时错
•E_WARNING - 运行时警告(非致命性错)
•E_PARSE - 编译时解析错误

E_CORE_ERROR - 发生于PHP启动时初始化过程中的致命错误

E_CORE_WARNING - 发生于PHP启动时初始化过程中的警告(非致命性错)

E_COMPILE_ERROR - 编译时致命性错

E_COMPILE_WARNING - 编译时警告(非致命性错)

E_USER_ERROR - 用户产生的出错消息

E_USER_WARNING - 用户产生的警告消息

E_USER_NOTICE - 用户产生的提醒消息
值的设置
error_reporting = E_ALL & ~E_NOTICE ; 显示所有的错误,除了提醒
error_reporting = E_ALL | E_NOTICE ; 显示所有的错误包含除了提醒
display_errors = On ; 显示出错误信息,当Off时,可配合log_errors使用
log_errors = Off ; 在日志文件里记录错误,当为Off时不保存错误,可配合error_log使用
error_log = filename ; 记录错误日志于指定文件
如:error_log = "/usr/local/apache/log/error_log" 或者
    error_log = "d:/window/apache/error_log"
上面那些全局变量可通过修改php.ini直接设置;但也可以在程序里进行修改,如:
<?php
ini_set('error_reporting', E_ALL | E_STRICT);
ini_set('display_errors', 'Off');
ini_set('log_errors', 'On');
ini_set('error_log', 'd:/window/apache/error_log');
?>
这样当执行如下程序时
<?php
echo $test;
?>
就会在error_log里写入一笔错误信息:
 
1  /  1  页   1 跳转

版权所有 流水日志  希望网络 流水日志 八方学院 理想论坛 google9  Sitemap

Powered by Discuz!NT 2.0.1214    Copyright © 2010 论坛网址.
Processed in 0.15625 second(s) , 3 queries.
返顶部