本人在学习PHP过程中的随笔心得
1、同样的一个类,如果通过创建对象来调用,
就可以看做是一个非静态的类。如果通过类型直接调用,就可以看做是一个静态类。
2、PHP中抽象类和接口类的区别,共有三点:
(1):对接口类的使用方式是通过implements关键字来实现的;而抽象类是通过extends来实现的。
(2):一个类可以implements 多个 interface;而抽象类只能 extends 一个 Abstract。
(3):在接口中(interface)不可以有函数的实现代码;在抽象类(Abstract)中可以有函数的实现代码。
3、PHP中的fgetc()去指定文件第一个字符的函数,取出来的字符对中文不友好,中文为乱码。
4、当同时出现两个以上的fgetc(),fgets()方法指针将下移动一个。
5、静态类的调用(::)?
6、PHP.INI文件中显示错误报告的参数设置
在PHP.INI文件中有:
display_errors=off //是否显示错误,默认为否。
error_reporting=E_All //如何显示错误,默认为显示错误、警告、和一些正确的提示。
如果想开启PHP的错误报告可以将上述的值改为:
display_errors=on
error_reporting=E_All & ~E_Notice
重启APACHE。就OK 了。
7、输出多行
<?php
echo <<< Js
Js;
?>
8、全的PHP开发,应用环境,类库。打包安装程序。?
9、html文章自动累加器
<script language='javascript' src='Counter.php'></script>
10、MySql 中的 分页显示 :select * from News limit $start, $pagesize
其中$start 是指 起始的记录位置,$pagesize是指一次取多少条。
MySql||PHP 多项勾选删除。
//没有分页的时候用这种方式(mysql_result加mysql_numrows)。
for($i=0;$i<mysql_numrows($query);i++)
{
$Serial_No=mysql_result($query,$i,"Serial_No");
echo ("<input type='checkbox' name='chk[]' value='.$serial_no.'>");
}
for($_POST["chk"] as $check)
{
$query=@mysql_query("delete from news where id=".$check);
if($query)
{
echo ("<script language='javascript'>window.alert('删除成功');</script>");
}
else
{
echo ("<script language='javascript'>window.alert('删除失败');</script>");
}
}
//有分页的时候用。mysql_fetch_row($query) and mysql_fetch_array($query)
//推荐用 mysql_fetch_arry($query).用法如下:
@mysql_connect("localhost","root","*********")
or die("数据库连接失败!");
@mysql_select_db("MyDataBase")
or die("该数据库不存在!");
$query=@mysql_query("select * from News limit $start, $pagesize");
while($row=mysql_fetch_array($query))
{
$Serial_No=$row['serial_no'];
}
11、//使用PHP获取MySQL数据库信息
//1、获得localhost服务器中的所有数据库的名称。
<?php
@mysql_connect("localhost","root","********")
or die();
$dbs=mysql_list_dbs();
while($array=mysql_fetch_row($dbs))
{
echo ($arry[0]."<br/>");
}
?>
//2、获得指定表的信息
//@+方法名(such as mysql_connect)后面必要加上 or die("...........");原因:试探性操作。
<?php
@mysql_connect("","","")
or die("");
$dbtables=mysql_list_tables("mydb");
while ($array=mysql_fetch_row($dbtables))
{
echo ($array."<br/>");
}
?>
//3、获得指定表的列数
<?php
@mysql_connect("","","")
or die("........");
@mysql_select_db("mydb")
or die("........");
$ColumnNums=@mysql_query("select * from mytables")
echo mysql_num_fields($ColumnNums);
?>
//4、获得列的名称
<?php
@mysql_connect("","","")
or die ("........");
@mysql_select_db("mydb")
or die(".........");
$ColumnDetail=@mysql_query("select * from mytable");
echo mysql_field_name($ColumnDetail,0); //其中的0表示的是第一列,以此类推。
?>
//5、获得列的数据类型
<?php
@mysql_connect("","","")
or die ("........");
@mysql_select_db("mydb")
or die(".........");
$ColumnDetail=@mysql_query("select * from mytable");
echo mysql_field_type($ColumnDetail,0); //其中的0表示的是第一列,以此类推。
?>
//6、获得列的长度
<?php
@mysql_connect("","","")
or die ("........");
@mysql_select_db("mydb")
or die(".........");
$ColumnDetail=@mysql_query("select * from mytable");
echo mysql_field_len($ColumnDetail,0); //其中的0表示的是第一列,以此类推。
?>
//7、获得列的标志
<?php
@mysql_connect("","","")
or die ("........");
@mysql_select_db("mydb")
or die(".........");
$ColumnDetail=@mysql_query("select * from mytable");
echo mysql_field_flag($ColumnDetail,0); //其中的0表示的是第一列,以此类推。
?>
//8、一个完整查看一个指定表的实例
<?php
@mysql_connect("","","")
or die ("........");
@mysql_select_db("mydb")
or die(".........");
$ColumnDetail=@mysql_query("select * from mytable");
$num=mysql_num_fields($ColumnDetail);
for($i=0;$i<$num;$i++)
{
echo mysql_field_name($ColumnDetail,$i);
echo mysql_field_type($ColumnDetail,$i);
echo mysql_field_flag($ColumnDetail,$i);
echo mysql_field_len($ColumnDetail,$i);
}
?>
12、//PHP调用存储过程、触发器
<?php
$query=mysql_query("call mytest14();");调用存储过程mytest14
?>