php函数库(other),php函数库othersession函数:session_abort — discard session array changes and finish sessionsession_abort() finishes session without saving data. thus the original values in session data are kept.
返回值:没有你返回值。session_cache_expire — 返回当前缓存的到期时间session_cache_expire() 返回 session.cache_expire 的设定值。
请求开始的时候,缓存到期时间会被重置为 180,并且保存在 session.cache_expire 配置项中。 因此,针对每个请求,需要在 session_start() 函数调用之前 调用 session_cache_expire() 来设置缓存到期时间。参数:
new_cache_expire如果给定 new_cache_expire ,就使用 new_cache_expire 的值设置当前缓存到期时间。
note: 仅在 session.cache_limiter 的设置值 不是 nocache 的时候, 才可以设置 new_cache_expire 参数。
返回值:返回 session.cache_expire 的当前设置值, 以分钟为单位,默认值是 180 (分钟)。
session_cache_limiter — 读取/设置缓存限制器session_cache_limiter() 返回当前缓存限制器的名称。参数:
cache_limiter 如果指定了 cache_limiter 参数, 将使用指定值作为缓存限制器的值。可选的值值发送的响应头
public expires:(根据 session.cache_expire 的设定计算得出)cache-control: public, max-age=(根据 session.cache_expire 的设定计算得出)last-modified:(会话最后保存时间)
private_no_expire cache-control: private, max-age=(根据 session.cache_expire 的设定计算得出), pre-check=(根据 session.cache_expire 的设定计算得出)last-modified: (会话最后保存时间)
private expires: thu, 19 nov 1981 08:52:00 gmtcache-control: private, max-age=(根据 session.cache_expire 的设定计算得出), pre-check=(根据 session.cache_expire 的设定计算得出)last-modified: (会话最后保存时间)
nocache expires: thu, 19 nov 1981 08:52:00 gmtcache-control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0pragma: no-cache
返回值:返回当前所用的缓存限制器名称。
session_commit — session_write_close 的别名session_decode — 解码会话数据session_decode() 对 $data 参数中的已经序列化的会话数据进行解码, 并且使用解码后的数据填充 $_session 超级全局变量。参数:
data编码后的数据
返回值:成功时返回 true, 或者在失败时返回 false。session_destroy — 销毁一个会话中的全部数据session_destroy() 销毁当前会话中的全部数据, 但是不会重置当前会话所关联的全局变量, 也不会重置会话 cookie。 如果需要再次使用会话变量, 必须重新调用 session_start() 函数。
为了彻底销毁会话,比如在用户退出登录的时候,必须同时重置会话 id。 如果是通过 cookie 方式传送会话 id 的,那么同时也需要 调用 setcookie() 函数来 删除客户端的会话 cookie。
返回值:成功时返回 true, 或者在失败时返回 false。
session_encode — 将当前会话数据编码为一个字符串session_encode() 返回一个序列化后的字符串,包含被编码的、储存于 $_session 超全局变量中的当前会话数据。参数:
返回值:返回当前会话编码后的内容。session_get_cookie_params — 获取会话 cookie 参数获取会话 cookie 的参数。
返回值:返回一个包含当前会话 cookie 信息的数组:lifetime - cookie 的生命周期,以秒为单位。path - cookie 的访问路径。domain - cookie 的域。secure - 仅在使用安全连接时发送 cookie。httponly - 只能通过 http 协议访问 cookiesession_id — 获取/设置当前会话 idsession_id() 可以用来获取/设置 当前会话 id。参数:
id如果指定了 id 参数的值, 则使用指定值作为会话 id。 必须在调用 session_start() 函数之前调用 session_id()函数。 不同的会话管理器对于会话 id 中可以使用的字符有不同的限制。 例如文件会话管理器仅允许会话 id 中使用以下字符:a-z a-z 0-9 , (逗号)和 - (减号)
note: 如果使用 cookie 方式传送会话 id,并且指定了 id 参数, 在调用 session_start() 之后都会向客户端发送新的 cookie, 无论当前的会话 id 和新指定的会话 id 是否相同。
返回值:session_id() 返回当前会话id。 如果当前没有会话,则返回空字符串()。session_is_registered — 检查变量是否在会话中已经注册检查变量是否已经在会话中注册。参数:
name变量名称。
返回值:session_is_registered() 返回 true 则表示 name 变量已经在当前会话中注册使用,否则返回 false 。session_module_name — 获取/设置会话模块名称session_module_name() 获取或设置会话模块名称。参数:module如果指定 module 参数,则使用 指定值作为会话模块。
返回值:返回当前所用的会话模块名称。session_name — 读取/设置会话名称session_name() 函数返回当前会话名称。 如果指定 name 参数, session_name() 函数会更新会话名称, 并返回 原来的 会话名称。参数:
name用在 cookie 或者 url 中的会话名称, 例如:phpsessid。 只能使用字母和数字作为会话名称,建议尽可能的短一些, 并且是望文知意的名字(对于启用了 cookie 警告的用户来说,方便其判断是否要允许此 cookie)。 如果指定了 name 参数, 那么当前会话也会使用指定值作为名称。
会话名称至少需要一个字母,不能全部都使用数字, 否则,每次都会生成一个新的会话 id。
返回值:返回当前会话名称。
session_regenerate_id — 使用新生成的会话 id 更新现有会话 idsession_regenerate_id() 在不修改当前会话中数据的前提下使用新的 id 替换原有会话 id。参数:
delete_old_session是否删除原 id 所关联的会话存储文件。
返回值:成功时返回 true, 或者在失败时返回 false。
session_register_shutdown — 关闭会话将 session_write_close() 函数注册为关闭会话的函数。参数:
此函数没有参数。
返回值:没有返回值。session_register — register one or more global variables with the current session
session_reset — re-initialize session array with original valuessession_reset() reinitializes a session with original values stored in session storage. this function requires an active session and discards changes in $_session.
没有返回值session_save_path — 读取/设置当前会话的保存路径session_save_path() 返回当前会话的保存路径。参数:
path指定会话数据保存的路径。 必须在调用 session_start() 函数之前调用 session_save_path() 函数。
note:
在某些操作系统上,建议使用可以高效处理 大量小尺寸文件的文件系统上的路径来保存会话数据。 例如,在 linux 平台上,对于会话数据保存的工作而言,reiserfs 文件系统会比 ext2fs 文件系统能够提供更好的性能。
返回值:返回保存会话数据的路径。session_set_cookie_params — 设置会话 cookie 参数cookie 参数可以在 php.ini 文件中定义,本函数仅在当前脚本执行过程中有效。 因此,如果要通过函数修改 cookie 参数,需要对每个请求都要 在调用 session_start() 函数之前调用 session_set_cookie_params() 函数。
本函数会修改运行期 ini 设置值, 可以通过 ini_get() 函数获取这些值。参数:
lifetimecookie 的 生命周期,以秒为单位。
path此 cookie 的有效 路径。 on the domain where 设置为“/”表示对于本域上所有的路径此 cookie 都可用。
domaincookie 的作用 域。 例如:“www.php.net”。 如果要让 cookie 在所有的子域中都可用,此参数必须以点(.)开头,例如:“.php.net”。
secure设置为 true 表示 cookie 仅在使用 安全 链接时可用。
httponly设置为 true 表示 php 发送 cookie 的时候会使用 httponly 标记。
返回值:没有返回值。session_set_save_handler — 设置用户自定义会话存储函数session_set_save_handler() 设置用户自定义 会话存储函数。 如果想使用 php 内置的会话存储机制之外的方式, 可以使用本函数。 例如,可以自定义会话存储函数来将会话数据存储到数据库。
返回值:成功时返回 true, 或者在失败时返回 false。这里使用了 session_set_save_handler() 函数的 oop 原型 并且使用第二个参数来注册 shutdown 函数。 当将对象注册为会话保存管理器时,建议使用这种方式。
value 的形式存在。参数:
class_namethe class name
返回值:returns an associative array of declared properties visible from the current scope, with their default value. the resulting array elements are in the form of varname => value. in case of an error, it returns false. get_class_vars() example:
var1 = foo;
$this->var2 = bar;
return true;
}
}
$my_class = new myclass();
$class_vars = get_class_vars(get_class($my_class));
foreach ($class_vars as $name => $value) {
echo $name : $value\n;
}
?>
// before php 4.2.0var2 : xyzvar3 : 100// as of php 4.2.0var1 :var2 : xyzvar3 : 100
get_class_vars() and scoping behaviour:
// 5.0.0a| * b| testcase ca| * b| testcase c// 5.0.1 - 5.0.2a|b|ca|b|c// 5.0.3 +a|b|ca
get_class — 返回对象的类名返回对象实例 obj 所属类的名字。如果 obj 不是一个对象则返回 false。
使用 get_class():
name();
?>
its name is foomy name is foo
参数:objectthe tested object. this parameter may be omitted when inside a class.
using get_class() in superclass:
string(3) foostring(3) bar
get_declared_classes — 返回由已定义类的名字所组成的数组返回值:返回由当前脚本中已定义类的名字组成的数组。
array( [0] => stdclass [1] => __php_incomplete_class [2] => directory)
get_declared_interfaces — 返回一个数组包含所有已声明的接口返回值:本函数返回一个数组,其内容是当前脚本中所有已声明的接口的名字。
array( [0] => traversable [1] => iteratoraggregate [2] => iterator [3] => arrayaccess [4] => reflector [5] => recursiveiterator [6] => seekableiterator)
get_declared_traits — 返回所有已定义的 traits 的数组参数:此函数没有参数返回值:返回一个数组,其值包含了所有已定义的 traits 的名称。 在失败的情况下返回 null。get_object_vars — 返回由对象属性组成的关联数组返回由 obj 指定的对象中定义的属性组成的关联数组。
x = $x;
$this->y = $y;
}
function setlabel($label){
$this->label = $label;
}
function getpoint(){
return array(x => $this->x,
y => $this->y,
label => $this->label);
}
}
// $label is declared but not defined
$p1 = new point2d(1.233, 3.445);
print_r(get_object_vars($p1));
$p1->setlabel(point #1);
print_r(get_object_vars($p1));
?>
array ( [x] => 1.233 [y] => 3.445 [label] => ) array ( [x] => 1.233 [y] => 3.445 [label] => point #1 )
get_parent_class — 返回对象或类的父类名如果 obj 是对象,则返回对象实例 obj 所属类的父类名。
如果 obj 是字符串,则返回以此字符串为名的类的父类名。此功能是在 php 4.0.5 中增加的。
i'm dad's soni'm dad's son too
参数:object
the tested object or class name
interface_exists — 检查接口是否已被定义检查接口是否已被定义。参数:
interface_name接口名。
autoload默认是否调用 __autoload。
返回值:本函数在由 interface_name 给出的接口已定义时返回 true,否则返回 false。is_a — 如果对象属于该类或该类是此对象的父类则返回 true如果 object 是该类或该类是此对象的父类。参数:
objectthe tested object
class_namethe class name
allow_stringif this parameter set to false, string class name as object is not allowed. this also prevents from calling autoloader if the class doesn't exist.
返回值:returns true if the object is of this class or has this class as one of its parents, false otherwise.is_a() 例子:
在 php 5 中使用 instanceof 运算符:
is_subclass_of — 如果此对象是该类的子类,则返回 true如果对象 object 所属类是类 class_name 的子类,则返回 true,否则返回 false。参数:
objecta class name or an object instance
class_namethe class name
allow_stringif this parameter set to false, string class name as object is not allowed. this also prevents from calling autoloader if the class doesn't exist.
返回值:this function returns true if the object object, belongs to a class which is a subclass of class_name, falseotherwise.
yes, $wfc is a subclass of widgetfactoryno, $wf is not a subclass of widgetfactoryyes, widgetfactory_child is a subclass of widgetfactory
method_exists — 检查类的方法是否存在检查类的方法是否存在于指定的 object中。参数:
object对象示例或者类名。
method_name方法名。
返回值:如果 method_name 所指的方法在 object 所指的对象类中已定义,则返回 true,否则返回 false。 method_exists() 例子:
static method_exists() 例子:
property_exists — 检查对象或类是否具有该属性本函数检查给出的 property 是否存在于指定的类中(以及是否能在当前范围内访问)。参数:
class字符串形式的类名或要检查的类的一个对象
property属性的名字
返回值:如果该属性存在则返回 true,如果不存在则返回 false,出错返回 null。
trait_exists — 检查指定的 trait 是否存在参数:traitname待检查的 trait 的名称
autoload如果尚未加载,是否使用自动加载(autoload)。
返回值:如果 trait 存在返回 true,不存在则返回 false。发生错误的时候返回 null。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------mysql函数:mysql_affected_rows — 取得前一次 mysql 操作所影响的记录行数取得最近一次与 link_identifier 关联的 insert,update 或 delete 查询所影响的记录行数。参数:
link_identifiermysql 连接。如不指定连接标识,则使用由 mysql_connect() 最近打开的连接。如果没有找到该连接,会尝试不带参数调用 mysql_connect() 来创建。如没有找到连接或无法建立连接,则会生成 e_warning 级别的错误。
mysql_affected_rows() 例子:
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
die('could not connect: ' . mysql_error());
}
mysql_select_db('mydb');
/* 本例返回被删除记录的准确数目 */
mysql_query('delete from mytable where id
records deleted: 10records deleted: 0
使用事务处理的 mysql_affected_rows() 例子:
mysql_db_name — 取得结果数据取得 mysql_list_dbs() 调用所返回的数据库名。参数:
resultmysql_list_dbs() 调用所返回的结果指针。
row结果集中的行号。
field字段名。
返回值:如果成功则返回数据库名,失败返回 false。如果返回了 false,用 mysql_error() 来判断错误的种类。
error_reporting(e_all);
$link = mysql_connect('dbhost', 'username', 'password');
$db_list = mysql_list_dbs($link);
$i = 0;
$cnt = mysql_num_rows($db_list);
while ($i
mysql_db_query — 发送一条 mysql 查询根据查询结果返回一个正的 mysql 结果资源号,出错时返回 false。本函数会对 insert/update/delete 查询返回true/false 来指示成功或失败。
mysql_db_query() 选择一个数据库并在其上执行查询。如果没有提供可选的连接标识,本函数会去找一个到 mysql 服务器的已打开的连接,如果找不到已打开连接则会尝试无参数调用 mysql_connect() 来建立一个。
注意此函数不会切换回先前连接到的数据库。换句话说,不能用此函数临时在另一个数据库上执行 sql 查询,只能手工切换回来。强烈建议用户在 sql 查询中使用 database.table 语法来替代此函数。
mysql_drop_db — 丢弃(删除)一个 mysql 数据库mysql_drop_db() 尝试丢弃(删除)指定连接标识所关联的服务器上的一整个数据库。
成功时返回 true, 或者在失败时返回 false。
为向下兼容也可以用 mysql_dropdb(),但反对这样做。
不提倡使用 mysql_drop_db() 函数最好用 mysql_query() 提交一条 sql drop database 语句来替代。
database_name the name of the database that will be deleted.link_identifier mysql 连接。如不指定连接标识,则使用由 mysql_connect() 最近打开的连接。如果没有找到该连接,会尝试不带参数调用 mysql_connect() 来创建。如没有找到连接或无法建立连接,则会生成 e_warning 级别的错误。返回值:成功时返回 true, 或者在失败时返回 false。
mysql_errno — 返回上一个 mysql 操作中的错误信息的数字编码返回上一个 mysql 函数的错误号码,如果没有出错则返回 0(零)。
从 mysql 数据库后端来的错误不再发出警告,要用 mysql_errno() 来提取错误代码。注意本函数仅返回最近一次 mysql 函数的执行(不包括 mysql_error() 和 mysql_errno())的错误代码,因此如果要使用此函数,确保在调用另一个 mysql 函数之前检查它的值。
mysql_connect(localhost, mysql_user, mysql_password);
mysql_select_db(nonexistentdb);
echo mysql_errno() . : . mysql_error(). \n;
mysql_select_db(kossu);
mysql_query(select * from nonexistenttable);
echo&nb