PHP手册笔记
2024-09-02 05:02:50
<?php
getenv — 获取一个环境变量的值
$ip = getenv ( 'REMOTE_ADDR' );
// 或简单仅使用全局变量($_SERVER 或 $_ENV)
$ip = $_SERVER [ 'REMOTE_ADDR' ]; getopt — 从命令行参数列表中获取选项 当使用命令行执行时:php script.php arg1 arg2 arg3
var_dump ( $argv );
//结果为
array(4) {
[0]=> string(10) "script.php"
[1]=> string(4) "arg1"
[2]=> string(4) "arg2"
[3]=> string(4) "arg3"
}
当使用命令行执行时:php script.php arg1 arg2 arg3
var_dump ( $argc ); //结果为: int(4) $GLOBALS — 引用全局作用域中可用的全部变量
function test () {
$foo = "local variable" ;
echo '$GLOBALS找全局变量所以找到Example content: ' . $GLOBALS [ "foo" ] . "\n" ;
echo '正常的找局部 local variable: ' . $foo . "\n" ;
}
$foo = "Example content" ;
test (); 迭代(目的实例化一个对象后可以遍历那个对象) 写类时我们要继承Iterator的话就必须多些5个方法 1.current() 2.key() 3.next() 4.rewind() 5.valid
聚合式迭代器(目的实例化一个对象后可以遍历那个对象) 我们写类时要是继承 IteratorAggregate 就必须多写一个固定死的方法 getIterator(){ return new ArrayIterator($this); }
数组式访问 (目的实例化一个对象后可以遍历那个对象) 我们写类时要是继承ArrayAccess()接口 就必须多写4个方法
序列化接口 多写2个方法 套接字上下文选项 — 套接字上下文选项列表
// '7000'
$opts = array(
'socket' => array(
'bindto' => '0:7000' ,
),
);
$context = stream_context_create ( $opts );
echo file_get_contents ( 'http://www.example.com' , false , $context ); HTTP context 的选项列表
$opts = array( 'http' =>
array(
'method' => 'POST' ,
'header' => 'Content-type: application/x-www-form-urlencoded' ,
'content' => $postdata
)
);
$context = stream_context_create ( $opts );
$result = file_get_contents ( 'http://example.com/submit.php' , false , $context ); FTP 上下文选项列表
$stream_options = array('ftp' => array('overwrite' => true));
$stream_context = stream_context_create($stream_options); CURL 上下文选项列表
$opts = array( 'http' =>
array(
'method' => 'POST' ,
'header' => 'Content-type: application/x-www-form-urlencoded' ,
'content' => $postdata
)
);
$context = stream_context_create ( $opts );
$result = file_get_contents ( 'http://example.com/submit.php' , false , $context ); 加载扩展 如果gd扩展已加载,返回 TRUE ,否则返回 FALSE 。
if (! extension_loaded ( 'gd' )) {
if (! dl ( 'gd.so' )) {
exit;
}
} // 引入一个扩展的例子,基于操作系统
if (! extension_loaded ( 'sqlite' )) {
if ( strtoupper ( substr ( PHP_OS , 0 , 3 )) === 'WIN' ) { //判断操作系统
dl ( 'php_sqlite.dll' );
} else {
dl ( 'sqlite.so' );
}
} 获取当前 PHP 脚本所有者名称 echo 'Current script owner: ' . get_current_user (); — 返回所有常量的关联数组,键是常量名,值是常量值
define ( "MY_CONSTANT" , 1 ); print_r ( get_defined_constants ( true )); 输入模块名称 返回模块所以方法 print_r ( get_extension_funcs ( "xml" )); 查看php 引入了哪些文件 print_r(get_included_files()); 返回所有编译并加载的模块 print_r ( get_loaded_extensions ()); // 如果启用了魔术引号
echo $_POST [ 'lastname' ]; // O\'reilly //增加反斜线
echo addslashes ( $_POST [ 'lastname' ]); // O\\\'reilly
// 适用各个 PHP 版本的用法
if ( get_magic_quotes_gpc ()) {//为关闭时返回 0,否则返回 1
$lastname = stripslashes ( $_POST [ 'lastname' ]); //去掉反斜线
}else {
$lastname = $_POST [ 'lastname' ];
} // 如果使用 MySQL
$lastname = mysql_real_escape_string ( $lastname ); echo $lastname ; // O\'reilly
$sql = "INSERT INTO lastnames (lastname) VALUES (' $lastname ')" ; getmyuid — 获取 PHP 脚本所有者的 UID 获取当前 PHP 脚本拥有者的用户组 ID。 getmygid getmyinode — 获取当前脚本的索引节点(inode) getmypid — 获取 PHP 进程的 ID ini_get_all — 获取所有配置选项 ini_get — 获取一个配置选项的值 memory_get_peak_usage — 返回分配给 PHP 内存的峰值 memory_get_usage — 返回分配给 PHP 的内存量 php.ini文件的位置 echo php_ini_loaded_file (); 返回 web 服务器和 PHP 之间的接口类型 PHP 常量 PHP_SAPI 具有和 php_sapi_name() 相同的值。 打印 PHP 贡献者名单 phpcredits ( CREDITS_ALL - CREDITS_FULLPAGE );
phpversion — 获取当前的PHP版本
set_time_limit — 设置脚本最大执行时间 sys_get_temp_dir — 返回用于临时文件的目录 对比两个「PHP 规范化」的版本数字字符串
if ( version_compare ( PHP_VERSION , '5.3.0' ) >= 0 ) {
echo 'I am at least PHP version 5.3.0, my version: ' . PHP_VERSION . "\n" ;
} zend_thread_id — 返回当前线程的唯一识别符 zend_version — 获取当前 Zend 引擎的版本 array_combine($array(一维数组的值做键), 另一个一维数组的值做值);新数组创建成功
array_column($array, '多维数组中的某元素值做值', '某元素值做键');
str_repeat ( "-=" , 10 ); //-=-=-=-=-=-=-=-=-=-= echo nl2br ( "foo isn't\n bar" );//foo isn't<br />bar echo lcfirst ('HelloWorld' ); // helloWorld // Outputs: A 'quote' is <b>bold</b>
echo $a = htmlentities ( $str , ENT_QUOTES );//引号也被转换
echo html_entity_decode ( $a );//引号不被转换 // 注意,这里的引号不会被转换
echo htmlspecialchars_decode ( $str , ENT_NOQUOTES );
echo htmlspecialchars ( "<a href='test'>Test</a>" , ENT_QUOTES ); // <a href='test'>Test</a> // count_chars ( string $string [, int $mode = 0 ] )
echo $str =convert_uuencode ( 'string' );//1个参数(string) 目的对string进行编码 返回结果 echo convert_uudecode ( $str );//解码一个 uuencode 编码的字符串 $str = chunk_split('abcdefghi', 2, '=');//3个参数,目的用指定字符串将其分割为一定长度,返回分割后的字符。 stripslashes — 反引用一个引用字符串
addcslashes(string, 'A-z')//两个参数 目的转义 字符串 返回转以后的字符串
addslashes(string);//一个参数 目的转义4个特殊符号 ‘ “ \ null 返回转以后的字符串
string stripcslashes ( string $str ) 反引用一个使用 addcslashes() 转义的字符串 bin2hex(二进制) //一个参数 目的2进制转16进制 返回16进制
hex2bin — 转换十六进制字符串为二进制字符串 chop() rtrim() 的别名 //2个参数,目的去除右边空白或字符 返回去除后的结果
/**/
最新文章
- UI神器-SOUI
- 如何优化用SQL语句INSERT INTO … SELECT插入数据时锁全表的问题
- 【特别推荐】10款唯美浪漫的婚礼 &; 结婚纪念网站模板
- Google 谷歌网页搜索, 学术搜索
- 转 Flex MXML编译成AS类
- TreeView 读取 xml 显示节点
- mysql 主从搭建步骤
- JavaScript之一: 闭包、执行环境、作用域链
- android登录实现,存储数据到/data/data/包名/info.txt
- 深度拾遗(06) - 1X1卷积/global average pooling
- [转]CSS clear both清除浮动
- 【原创】Windows服务管家婆之Service Control Manager
- Simple Recurrent Unit,单循环单元
- first one
- python之文件读写和异常处理
- snmp信息的查询命令snmpwalk
- FPGA基础知识8(FPGA静态时序分析)
- qt QTcpServer与QTcpSocket通讯
- win10下安装配置iis,发布iis
- 在Android Studio2.3中配置OpenCV4Android SDK
热门文章
- response.getWriter().write()和 response.getWriter().print()的区别
- python基础===两个list之间移动元素
- 【bzoj4552】排序
- 关于aspxgridview里面过长内容只显示的一部分的处理方案
- [hadoop][会装]zookeeper安装
- Sqrt(x)——二分法,防越界
- 微信小程序 - 时间进度条功能
- Delphi使程序的窗口出现在最前面并激活
- NET应用——你的数据安全有必要升级
- php-cgi segmentation fault nginx