1.php标准风格

<?php
//这是标准风格
echo '推荐标准风格';
?>

2.php中文乱码

.html:<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
.php:header('content-type:text/html;charset=utf-8');

3.定义变量,变量可以不声明直接使用

//一次声明多个变量并且赋值相同
$i=$j=$k=$m=$n=1;
//可变变量的例子
$a='b';
$b='c';
$c='d';
echo $$$a;//$$$a=$$b=$c=d
//取地址符号
//取地址符号
$i=1;
$j=&$i;
echo $j;//
echo '<br/>';
$j=3;
echo $j,'<br/>';//
echo $i;//
echo '<hr/>';

4.unset注销变量

//unset($var):注销变量
$i=1;
echo $i;//
unset($i);
echo $i;//
var_dump($i);//NULL

5.类型转换

//临时转换
$var=12;
var_dump((float)$var,(double)$var,(real)$var,(string)$var,(bool)$var,(boolean)$var);
//通过函数的形式实现临时转换
echo intval($var);

6.settype设置变量类型

$var=1;
settype($var,'float');

7.gettype获取变量类型

$var=1;
echo gettype($var);

8.检测变量

//检测变量是否为整型
$var=1;
var_dump(is_int($var),is_integer($var),is_long($var));
echo '<hr/>';
//检测变量是否为浮点类型
$var=1.2;
var_dump(is_float($var),is_double($var),is_real($var));
echo '<hr/>';
//检测是否是字符串类型
$var='king';
var_dump(is_string($var));
echo '<hr/>';
//检测是否是布尔类型
$var=false;
var_dump(is_bool($var));
echo '<hr/>';
//检测是否是标量
$var=123;
var_dump(is_scalar($var));
echo '<hr/>';
//检测是否是数组
$var=array();
var_dump(is_array($var));
echo '<hr/>';
//检测是否是资源
$var=fopen('test_9.php','r');
var_dump(is_resource($var));
echo '<hr/>';
//检查是否是对象
$var=new stdClass();
var_dump(is_object($var));
echo '<hr/>';
//检测是否为NULL
$var=null;
var_dump(is_null($var)); //检测是否为数值型,或者字符串的数值
$var=1;
$var='1.1';
$var='3king';
var_dump(is_numeric($var));

9.定界符:<<<

$title='test';
$content="自学PHP"; $test=<<<EOD
this is a test,
{$title}<br/>
{$content} <br/>
EOD; 或者: $test=<<<"EOD"
this is a test,
{$title}<br/>
{$content} <br/>
EOD;

10.系统常量

echo PHP_VERSION;//得到PHP版本
echo '<hr/>';
echo PHP_OS;//服务器端的操作系统
echo '<hr/>';
echo M_PI;//PI的值

11.define定义常量

define('MARRIED',true);//值为true时不区分大小写,默认为false

12.通过constant函数得到常量的值

const USERNAME="king";
echo constant('USERNAME');//king

13.defined检测常量名称是否被定义过

const USERNAME="king";
var_dump(defined('USERNAME'),defined('PASSWORD'));//bool(true) bool(false)

14.通过const 定义常量

const ROOT='this is ROOT';
echo ROOT;

15.get_defined_constants();得到所有已定义的常量

//得到所有已定义的常量,返回的是关联数组
print_r(get_defined_constants());

16.自增自减

 $var=1;
前缀形式:++$var,--$var,先加减1,在执行
后缀形式:$var++,$var--,先执行,在加减1
对于数值型支持自增自减运算符
布尔类型不支持自增自减运算符
null只支持自增,不支持自减
字符串只支持自增,不支持自减

17.mt_rand($min,$max):产生一个更好的随机数

$s=mt_rand(0,1);
echo $s;// 0/1

18.strlen($string):得到字符串的长度

19.strpos($string,$search[,$offset]):查找一个字符串中是否存在另一个字符串,如果找到了,返回这个字符串

第一次出现的位置,如果没找到返回false

$str='kaingkaing';
echo strpos($str,'a');//
echo strpos($str,'a',2);//

20.date

/*
设置时区:
通过函数的形式动态设置时区
date_default_timezone_get():得到当前的默认时区
date_default_timezone_set($timezone):设置时区
PRC:中华人民共和国
Asia/Shanghai
Asia/Chongqing
针对于当前脚本有效 通过修改PHP配置文件date.timezone设置时区,针对于所有脚本都生效 ini_set($name,$value):运行时设置PHP的配置选项
ini_get($name):得到PHP配置选项的值 date($format[,$time=time()]):得到当前服务器的日期时间
Y:代表4位的年
m:代表2位的月
d:代表2位的日
H:代表2位的小时
i:代表2位的分钟
s:代表2位的秒
w:返回一周内的第多少天,0~6,0代表星期日
*/
//得到默认时区
echo @date_default_timezone_get();//Asia/Shanghai
date_default_timezone_set('PRC');
echo date("Y年m月d日 H:i:s");//2017年11月23日 09:53:22

21.ini_get()获取php.ini文件中时区

echo ini_get('date.timezone');

22.ini_set()

ini_set('date.timezone','PRC');

23.isset($var)、empty($var)

/*
isset($var):检测变量是否被设置,只要变量有值,并且值不为空,isset返回true,否则返回
false empty($var):检测变量是否为空,也就是转换成布尔类型false那些情况,如果为空返回true
否则返回false
*/
$var=1;//true
$var=0;//true
$var='';//true
$var="";//true
$var=null;//false
var_dump(isset($var));
$var=0;//true
$var=0.0;//true
$var='';//true
$var='0';//true
$var=false;//true
$var=null;//true
$var=array();//true
var_dump(empty($var));

24. exit;//exit或者die终止执行了

exit;
exit(‘终止执行’);

25.strip_tags($string[,$allowTags]):过滤HTML标记

$string='<h1><a href="http://www.maiziedu.com/">maiziedu</a></h1>';
echo $string;
echo '<hr/>';
echo strip_tags($string);
echo '<hr/>';
echo strip_tags($string,'<a>');

26.strtolower($string):返回小写的字符串

strtoupper($string):返回大写之后的字符串

27.strcmp($str1,$str2):比较两个字符串的大小

$str1=$str2,返回0
$str1>$str2,返回1
$str1<$str2,返回-1

strcasecmp($str1,$str2):忽略大小写的比较两个字符串
$str1=$str2,返回0
如果不等返回的是Ascii差
28.trim($string[,$charList]):默认去掉字符串两端的空格,也可以去掉指定字符串

ltrim($string[,$charList]):
rtrim($string[,$charList]):

$string='abcdcba';
echo '!'.$string.'!';//! abcdcba !
echo '<hr/>';
echo '!'.trim($string,'acb').'!';//!d!
echo '<hr/>';
echo '!'.trim($string,'a').'!';//!bcdcb!
echo '<hr/>';
echo '!'.trim($string,'ac').'!';//!bcdcb!

29.goto

//goto testFor;//不能跳入循环、switch...case语句、函数和类

echo 'starting...';
echo '<hr/>'; goto next; echo 'this is a test'; next://名称:来定义标识符
echo 'this is next ...';
echo '<hr/>';
/*
starting...
this is a testthis is next ... */

30.$arr=range(low,high,step);//步长

$arr=range(1,10,2);//步长
print_r($arr);//Array ( [0] => 1 [1] => 3 [2] => 5 [3] => 7 [4] => 9 )

31.compact快速关联数组

$username='king';
$age=12;
$email='382771946@qq.com';
$addr='bj';
$userInfo=compact('username','age','email','addr');//Array ( [username] => king [age] => 12 [email] => 382771946@qq.com [addr] => bj )
print_r($userInfo);

32.foreach函数

 foreach($数组名称 as $val){
循环体;
}
foreach($$数组名称as $val):
echo $val,'<br/>';
endforeach;

33.file_put_contents($filename, $data):向.txt文件中写入数据

/*file_put_contents($filename,$data):向指定文件写内容,如果文件不存在,则会创建
如果存在,会将之前的内容清空在写入
*/
$filename='message.txt';
$data=1;
$data=1.2;
$data=true;
$data='this is a test';
$data=array(1,2,3,4,5,array('a','b','c'));
file_put_contents($filename, $data);

34.serialize($value):返回序列化之后的字符串

// serialize($value):返回序列化之后的字符串
$value=1;//i:1;
$value=1.2;//d:1.2;
$value=true;//b:1;
$value='king';//s:4:"king";
$value=null;//N;
$value=array('aaa','b',true,'',null);//a:5:{i:0;s:3:"a";i:1;s:1:"b";i:2;b:1;i:3;s:0:"";i:4;N;}
echo serialize($value);
echo '<hr/>';
//unserialize($value):将序列化之后的字符串反序列化

35.file_exists

    //file_exists($path):检测文件或者目录是否存在
//filesize($filename):得到文件大小,返回的是字节

35.count(),或是sizeof()

php中相关函数的更多相关文章

  1. Cocos2d-x开发中Ref内存管理

    Ref类是Cocos2d-x根类,Cocos2d-x中的很多类都派生自它,例如,我们熟悉的节点类Node也派生自Ref.我们介绍Ref内存管理.内存引用计数Ref类设计来源于Cocos2d-iphon ...

  2. iOS中GCD的使用小结

    http://www.jianshu.com/p/ae786a4cf3b1 本篇博客共分以下几个模块来介绍GCD的相关内容: 多线程相关概念 多线程编程技术的优缺点比较? GCD中的三种队列类型 Th ...

  3. 机器学习:scipy和sklearn中普通最小二乘法与多项式回归的使用对

    相关内容连接: 机器学习:Python中如何使用最小二乘法(以下简称文一) 机器学习:形如抛物线的散点图在python和R中的非线性回归拟合方法(以下简称文二) 有些内容已经在上面两篇博文中提到了,所 ...

  4. 算法笔记_031:计算中值和选择问题(Java)

    目录 1 问题描述  2 解决方案 2.1 计算中值问题 2.2 选择问题   1 问题描述 中值问题是求一个n个数列表中某一数组下标k,它要求该下标元素比列表中的一半元素大,又比另一半元素小,这个中 ...

  5. 原创 C++应用程序在Windows下的编译、链接:第三部分 静态链接(二)

    3.5.2动态链接库的创建 3.5.2.1动态链接库的创建流程 动态链接库的创建流程如下图所示: 在系统设计阶段,主要的设计内容包括:类结构的设计以及功能类之间的关系,动态链接库的接口.在动态链接库中 ...

  6. 《Single Image Haze Removal Using Dark Channel Prior》一文中图像去雾算法的原理、实现、效果(速度可实时)

    最新的效果见 :http://video.sina.com.cn/v/b/124538950-1254492273.html 可处理视频的示例:视频去雾效果 在图像去雾这个领域,几乎没有人不知道< ...

  7. virtio-blk简介[转]

    声明: 本博客欢迎转发,但请保留原作者信息!新浪微博:@孔令贤HW: 博客地址:http://lingxiankong.github.io/内容系本人学习.研究和总结,如有雷同,实属荣幸! virti ...

  8. matlab 聚类

    目前已知matlab的聚类方法有三种: 一.利用 clusterdata函数对样本数据进行一次聚类,其缺点为可供用户选择的面较窄,不能更改距离的计算方法: 二.层次聚类,该方法较为灵活,需要进行细节了 ...

  9. paper 105: 《Single Image Haze Removal Using Dark Channel Prior》一文中图像去雾算法的原理、实现、效果及其他

    在图像去雾这个领域,几乎没有人不知道<Single Image Haze Removal Using Dark Channel Prior>这篇文章,该文是2009年CVPR最佳论文.作者 ...

随机推荐

  1. 深度学习图像分割——U-net网络

    写在前面: 一直没有整理的习惯,导致很多东西会有所遗忘,遗漏.借着这个机会,养成一个习惯. 对现有东西做一个整理.记录,对新事物去探索.分享. 因此博客主要内容为我做过的,所学的整理记录以及新的算法. ...

  2. apache不解析php文件遍历目录

    程序目录下有index.php缺不能正常解析,直接刷出整个目录. 解决:在后面添加index.php的解析即可.. DirectoryIndex index.html index.html.var i ...

  3. Sail

    DescriptionThe polar bears are going fishing. They plan to sail from (sx,?sy) to (ex,?ey). However, ...

  4. PSP1123

    PSP时间图: 类型 任务 开始时间 结束时间 净时间 中断时间 日期 开会 开会 16:17 16:50 33 0 20171027 开会 开会 17:00 17:22 22 0 20171028 ...

  5. VS2005、VS2008中的快捷键、组合键大全

    Ctrl+E,D ----格式化全部代码 Ctrl+E,F ----格式化选中的代码 CTRL + SHIFT + B生成解决方案 CTRL + F7 生成编译 CTRL + O 打开文件 CTRL ...

  6. Java取两个变量不为空的变量的简便方法!

    一.需求 最近在项目中遇到一个小问题,即从数据库取两个变量,判断取出的变量是否为空,取不为空的变量:若两个变量都不为空,取两个变量:两个变量都为空,则跳过: 二.解决方案(这里提供两种思路) 1.第一 ...

  7. MySQL错误解决10038

    [错误解决]本地计算机上的mysql服务启动停止后,某些服务在未由其他服务或程序使用时将自动停止 标签: mysql计算机 2016-12-01 17:49 5508人阅读 评论(2) 收藏 举报   ...

  8. 【转】log4j.properties文件的配置

    一.前言 log4j使用的还是比较多的,但是对于其配置又很难描述清楚要怎么配置,说明我自己对于log4j的配置并不是非常熟悉,所以在网上找了一篇详尽的 博文转载,在此非常感谢原文作者的辛苦付出,如有需 ...

  9. 在html在添加cookie和读取cookie

    1.保存cookie var oDate = new Date(); oDate.setDate(oDate.getDate() + );//有效期为30天 document.cookie = &qu ...

  10. [洛谷P1341]无序字母对

    题目大意:给一张无向图,找一条字典序最小的欧拉路径 题解:若图不连通或有两个以上的奇数点,则没有欧拉路径,可以$dfs$,在回溯时把这个节点加入答案 卡点:没有在回溯时加入答案,导致出现了欧拉路径没走 ...