php的各种琐碎

<?php
//预定义变量 
$_GET, $_POST,  $_REQUES, $_SERVER, $GLOBALS
$_SERVER['REMOTE_ADDR'], $_SERVER['DOCUMENT_ROOT']
$_SERVER['SERVER_ADDR'], $_SERVER['SERVER_NAME']
$_SERVER['QUERY_STRING'], $_SERVER['PATH_INFO']

//定义常量
define('PI', 3.1415926); defined("PI"); const PI = 3.1415926;

//系统预定义常量
__FILE__, __LINE__, __DIR__
__CLASS__, __METHOD__,
PHP_INT_MAX, PHP_VARSION
//1.常量具有超全局作用域
//2.常量的值不可改变也不可以销毁
//3.常量只可以存储标量类型(整数, 浮点数, 字符串, 布尔型);

//使用数字常量
123, 0123, 0x123
//进制转换
decbin(); decoct(); dechex(); bindec(); octdec(); hexdec();

//双引号定界符字符串
$str =<<<'limit'
美丽心灵的永恒阳光
limit;

//判断类型
gettype(); settype(); unset(); is_int();is_float(); is_numeric();
is_string(); is_bool(); is_array(); is_object(); is_null; is_scalar();

//睡眠
sleep();

//错误处理
error_reporting(0); // 关闭所有错误提示 
//可选值有 E_NOTICE, E_WARNING, E_ERROR, 
//         E_USER_NOTICE, E_USER_WARNING, E_USER_ERROR, E_ALL
ini_set("display_errors", 0) ; //关闭所有错误提示
trigger_error("发生错误", E_USER_NOTICE);
ini_set('log_erros',  1) // 是否记录错误日志
ini_set('error_log', 'D:/error.text');//错误日志文件路径
set_error_handler("my_error_function");//错误发生时执行系统自动调用函数

//函数
//函数传参 在函数内部获取参数
func_get_args();
function_exists();

//字符串函数
print_r(); printf(); var_dump();
trim(); ltrim; rtrim(); str_pad($str, 100, '-'); str_repeat(); 
explode(); implode();
substr(); strchr(); strrchr(); stristr();
str_replace(); 
strlen(); strpos(); strrpos(); strripos();
strtolower(); strtoupper(); ucfirst(); lcfirst(); ucfirst();
nl2br(); addslashes(); htmlspecialchars(); htmlspecialchars_decode(); 
urlencode(); urldecode(); 
serialize(); unserialize();
//时间函数
time(); microtime(); date(); strtotime();

//数学函数
round(); ceil(); floor(); mt_rand();

//数组函数
sort(); rsort(); ksort(); krsort(); count(); array_sum(); 
in_array('value', $ar); array_search('value', $ar); 
array_reverse();  array_unique(); array_merge(); array_keys();
array_shift(); array_unshift(); array_pop(); array_push();
current(); key(); next(); prev(); end(); reset();

//数据库备份还原
mysqldump -h 127.0.0.1 -uroot -p database_name table_name > D:/xxx/xxx.sql
mysql -h 127.0.0.1 -uroot -p database < D:/xxx/xxx.sql

//数据库数据类型
int, tinyint, float, decimal, 
timestamp, date, datetime, time, year, 
set, enum, text, varchar, char

//mysql函数 
year(), month(), dayofmonth(), unix_timestamp();
concat()

//mysql索引
key, unique key, primary key, foreign key references, fulltext,

//sql语句
rename table old_table to new_table; //修改表名
alter table table_name change old_column new_column int not null; //修改字段
create table new_table like old_table; //复制表结构
insert into new_table select * from old_table //复制表内容
create view view_name as select * from new_table;

//mysql 用户权限
create user 'lucky'@'192.168.0.123' identified by '16899052';
grant all privileges on test.* to 'lucky'@'192.168.0.123' identified by '16899052';
revoke all on test.* from 'lucky'@'192.168.0.123' identified by '16899052';
set  password  =  password('新密码');
set  password  for  '用户名'@'允许登录的地址'  = password('新密码');

//类常量, 静态变量, 构造方法, self::, static::, parent::, 覆盖
class abc{
        const PI = 3.15;
        public static $pi = 3.16;
        protected $a = 'aaa';
        private $b = 'bbb';
        public $c = 'ca';
        function lalala()
        {
            echo self::PI.'<br />';
            echo self::$pi.'<br />';
            echo static::PI.'<br />';
            echo static::$pi.'<br />';
        }

        function __construct($change)
        {
            self::$pi = $change;
        }
    }
    echo abc::PI.'<br />';
    echo abc::$pi.'<br />';
    $abc = new abc(3.17);
    $abc->lalala();

    class ccc extends abc
    {
        public $a = 'ccc_aaa';
        function __construct($change)
        {
            parent::__construct($change);
        }

        function lalala(){}
        function father()
        {
            parent::lalala();
        }
    }

    $ccc = new ccc(3.19);
    $ccc->father();

    var_dump($ccc instanceof ccc);
    $ddd = clone $ccc;
    var_dump($ddd);

//属性重载
__set($name, $value), __get($name), __isset($name), __unset($name)
//方法重载
__call($method_name, $arguments_array);

//接口
interface abc
{
    function aaa();
}
class ccc implements abc
{
    function aaa(){}
}

//类函数
__autoload(); spl_autoload_register(); __tostring(); 
get_class($obj); get_parent_class($obj)/*'class_name'*/;
get_class_methods($obj)/*'class_name'*/; 
get_class_vars('class_name'); get_object_vars($obj);

//header函数
header("content-type:text/html; charset=utf-8");
header("content-length:$length");
header("Refresh:2; URL=http://localhost//session.php");
header("Location:http://localhost//session.php");
header("content-disposition:attachment; filename=xxx.zip");
header("content-type:$mime");
header("content-length:$filesize");
//cookie, session
$ar = array('abc'=>16899052);
setcookie("lucky", serialize($ar), time() + 1024, '/', '.me.com', false, true);
var_dump($_COOKIE);

session_start();
$_SESSION;
session_destroy();
session_set_cookie_params(time() + 60, '/', '.me.com', false, true);
session_set_save_handler('open', 'close', 'read', 'write', 'del', 'gc');

Session,COOKIE联系和区别?
联系
都是会话技术。
Session基于COOKIE,session-ID存储于COOKIE中!
区别:
                        Cookie          session
存储位置        浏览器端        服务器端
安全性         低                   高
大小限制        有                   没有
数据类型        字符串         全部

//上传文件
enctype="multipart/form-data";
move_uploaded_file($_FILES['tmp_name']);
uniqid($prefix, true);
is_uploaded_file();
max_file_uploades //php.ini 一个表单上传文件数量限制
post_max_size // 文件最大体积限制

//目录操作 
is_dir(); mkdir('dirname', 0755, true); rmdir();
opendir();  readdir(); closedir(); rename();  unset();

//文件操作
file_put_contents($fp, $content, FILE_APPEND); file_get_contents();
unlink(); filesize(); filemtime(); filectime(); file_exists(); 
fopen(); fclose(); fread(); fwrite('r, w, a, x'); fgetc(); fgets(); feof();
ftell(); fseek(); SEEK_CUR SEEK_END SEEK_SET
flock(); LOCK_SH LOCK_EX LOCK_UN    LOCK_EX | LOCK_NB

//HTTP
$_SERVER['HTTP_REFERER'];













  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值