首页 > 代码库 > 李炎恢PHP笔记
李炎恢PHP笔记
Echo print 输出
转型
$sum=0;
$total=(float)$sum
Isset() unset()判断一个变量是否存在
$echo intval$sum 浮点型
Define(“total”,100); 常量一旦定义就不可更改
判断句
<?php
If ($userAge>14){
Echo’内容’;}
?>
<?php
If ($userAge>14){
Echo’内容’;}
Else{echo ‘wufawutian’};
?>
If ($userAge>50){
Echo ’内容’;}
Elseif ($userAge>20){
Echo ’内容’;}
Elseif ($userAge>30){
Echo ’内容’;}
Else ($userAge>50){
Echo ’内容’;}
}
<?php
//多重线路,
//break退出问题,叫做中途退出这个条件判断
$weekday = 8;
switch ($weekday) {
case 1:
echo ‘今天星期一,吴祁买新衣!‘;
break;
case 2:
echo ‘今天星期二,去洗澡!‘;
break;
case 3:
echo ‘今天星期三,上山大老虎!‘;
break;
default:
echo ‘无聊在家!‘;
}
<?php
//while循环
//当判断表达式为假的时候,退出循环
$a = 10;
while ($a > 0) {
echo $a;
$a--;
echo ‘<br />‘;
}
?>
<?php
//break退出当前循环
//
// for ($i = 1;$i <= 10; $i++) {
//
// //在这个循环里面嵌套一个IF判断语句
// if ($i == 5) {
// break; //中途退出循环
// }
//
// echo $i.‘<br />‘;
//
// }
//exit退出整个程序
// for ($i = 1;$i <= 10; $i++) {
//
// //在这个循环里面嵌套一个IF判断语句
// if ($i == 5) {
// exit; //退出整个程序
// }
//
// echo $i.‘<br />‘;
//
// }
//
//
// echo ‘我还是会执行的‘
//continue退出当前这个循环继续下次循环
for ($i = 1;$i <= 10; $i++) {
//在这个循环里面嵌套一个IF判断语句
if ($i == 5) {
continue; //退出当前本次循环,并且继续下次循环OK
}
echo $i.‘<br />‘;
}
?>
<?php
//do while
$a = 10;
do {
echo $a;
$a--;
echo ‘<br />‘;
} while ($a>0)
?>
//do while
$a = 10;
do {
echo $a;
$a--;
echo ‘<br />‘;
} while ($a>0)
?>
//do while
$a = 10;
do {
echo $a;
$a--;
echo ‘<br />‘;
} while ($a>0)
?>
<meta http-equiv="Content-Type" content="text/html; charset=GBK">
<?php
$prices=array("c"=>"苹果","a"=>"猪肉","b"=>"饼干");
print_r(array_count_values($prices));
?>
数学函数
<?php
$a = ‘123.33e‘;
//echo is_numeric($a);
if (is_numeric($a)) {
echo ‘a是一个数字‘;
} else {
echo ‘a不是一个数字‘;
}
?>
<?php
$a = 10.0;
//如果是真(true)返回1,否则返回空
// if (is_int($a)) {
if (is_double($a)) {
echo ‘a是一个浮点数‘;
} else {
echo ‘a不是一个浮点数‘;
}
?>
《?Php
$userNames = array(‘李彦宏‘,‘周鸿祎‘,‘马云‘,‘俞敏洪‘,‘李开复‘,‘吴祁‘);
$userNames[5] = ‘李炎恢‘;
echo $userNames[5];
print_r($userNames);
?》
打印出24个字母
<?php
//range包含指定数组
//包含两种东西,一种叫做键(key),一种叫做值(value)
//key是自动生成的,默认从0开始,每次+1
//value是你自己赋值的
// $numbers = range(1,10);
//
// print_r($numbers);
$letters = range(‘a‘,‘z‘);
//print_r($letters);
echo $letters[15];
?>
?>
统计数据
<?php
//通过foreach循环来遍历数组,这方式好处,不需要去考虑key
//foreach遍历 $key => $value
//所以,你要先做个判断
$userNames = array(‘李彦宏‘,‘周鸿祎‘,‘马云‘,‘俞敏洪‘,‘李开复‘,‘吴祁‘);
if (is_array($userNames)) { //判断一下到底是不是数组
foreach ($userNames as $key => $value) {
echo $key.‘---‘.$value.‘<br />‘;
}
} else {
echo $userNames;
}
?>
<?php
//创建自定义键(key)的数组
//如果你不去声明元素的key,那么从开始0计算
$userNames = array(‘baidu‘=>‘李彦宏‘,‘taobao‘=>‘马云‘,‘360‘=>‘周鸿祎‘);
//print_r($userNames);
echo $userNames[‘baidu‘];
echo $userNames[‘360‘];
?>
<?php
//先创建只有一个元素的数组
$userAges = array(‘吴祁‘=>19);
//打印出吴祁的年龄
// echo $userAges[‘吴祁‘];
//将以前的数组,追加两条,这里说的下标,键,key是一个东西
$userAges[‘李炎恢‘] = 27;
$userAges[‘胡心鹏‘] = 23;
// echo $userAges[‘李炎恢‘];
print_r($userAges);
?>
<?php
// $userAges[‘吴祁‘] = 19;
// $userAges[‘李炎恢‘] = 27;
// $userAges[‘胡心鹏‘] = 23;
$userAges = array(‘吴祁‘=>19,‘李炎恢‘=>27,‘胡心鹏‘=>23);
//each的使用
//each -- 返回数组中当前的键/值对并将数组指针向前移动一步
//这里有一个指针,默认情况下,指针是指向第一个键值对
//这里的第一个键值对是 ‘吴祁‘=>19
//如果each($userAges),那么获取的就是第一个键值对 ‘吴祁‘=>19
//each这个函数返回的是一个数组,
//each将第一个键值对获取到,然后包装成一个新数组。
//相当于 $a = array( [0] => 吴祁,[1] => 19,[value] => 19,[key] => 吴祁)
each($userAges);//这个是第一步,将19,吴祁取出,包装成新数组
each($userAges);
$a = each($userAges); //这个是第二步了,指针已经下移一条,
echo $a[‘key‘];
?>
<?php
//创建一个单一的数组
$products = array(
array(‘苹果‘,6,28.8),
array(‘猪肉‘,2,32.1),
array(‘饼干‘,3,45.3)
);
//print_r($products);
//将$products第一条元素取出来
//数组里的数组
echo "|".$products[0][0]."|".$products[0][1]."|".$products[0][2]."|<br />";
echo "|".$products[1][0]."|".$products[1][1]."|".$products[1][2]."|<br />";
echo "|".$products[2][0]."|".$products[2][1]."|".$products[2][2]."|<br />";
?>
<?php
//创建一个单一的数组
$products = array(
array(‘产品名‘=>‘苹果‘,‘数量‘=>6,‘价格‘=>28.8),
array(‘产品名‘=>‘猪肉‘,‘数量‘=>2,‘价格‘=>32.1),
array(‘产品名‘=>‘饼干‘,‘数量‘=>3,‘价格‘=>45.3)
);
// print_r($products);
// for ($i=0;$i<count($products);$i++) {
// foreach ($products[$i] as $key => $value) {
// echo $key.‘--‘.$value.‘|‘;
// }
// echo ‘<br />‘;
// }
for ($i=0;$i<count($products);$i++) {
while (!!list($key,$value) = each($products[$i])) {
echo $key.‘--‘.$value.‘|‘;
}
echo ‘<br />‘;
}
?>
数组排序
<?php
$numbers = array(2,34,1,5,88,2,3,667,34);
rsort($numbers);
print_r($numbers);
?>
<?php
$fruit = array(‘c‘=>‘banner‘,‘a‘=>‘orange‘,‘b‘=>‘apple‘);
//按照键(key)名排序
krsort($fruit);
print_r($fruit);
?>
<?php
// echo ‘<img src="http://www.mamicode.com/images/mm1.jpg" />‘
//创建一个数组
$pic = array(‘mm1.jpg‘,‘mm2.jpg‘,‘mm3.jpg‘,‘mm4.jpg‘,‘mm5.jpg‘);
$a = array_rand($pic);
//数组进行随即打乱
//shuffle($pic);
//多数组进行反向排序,array打头的函数,一般会创建一个新数组
$a = array_reverse($pic);
// print_r($a);
for ($i=0;$i<3;$i++) {
echo ‘<img src="http://www.mamicode.com/images/‘.$a[$i].‘" style="margin:10px;" />‘;
echo "\n";
}
?>
<?php
$userName = array(‘吴祁‘);
//这个函数的返回值将得到,目前数组的元素个数
//在开头插入数据
array_unshift($userName,‘胡心鹏‘);
//在结尾插入数据
array_push($userName,‘李炎恢‘);
print_r($userName);
//删除开头的元素
array_shift($userName);
//删除结尾的元素
array_pop($userName);
print_r($userName);
?>
<?php
$fruit = array(‘banner‘,‘orange‘,‘apple‘);
//这个函数用来获取一个数组中的键(key)
//第二个参数表明随即获取几个
$a = array_rand($fruit,2);
echo $fruit[$a[0]];
echo $fruit[$a[1]];
?>
目录
<?php
$path = ‘C:\AppServ\www\Basic6\Demo1.php‘;
$array_path = pathinfo($path);
echo $array_path[‘dirname‘]; //这个打印出的是目录
echo $array_path[‘basename‘]; //这个打印出的是文件名
?>
<?php
//打开一个文件
//第一参数表明哪个文件,第二参数表明模式,w只写
//w如果,file.txt已经有了,并且有数据了。那么,删除这个文件,重新创建
//如果没有file.txt这个文件,那么,我就自行创建
// //fopen返回的是资源类型resource ,我们一般称它为句柄,或者叫资源句柄
//
// $fp = fopen(‘file.txt‘,‘w‘);
//
// //想文件里写入一些数据
//
// $outstring = ‘This is a wq!He is 19‘;
//
// fwrite($fp,$outstring,strlen($outstring));
//
// //当打开一个文件的时候,习惯性的将它关闭掉
// fclose($fp);
//就只有一句话,不需要任何其他灵活的事情的事情使用
//这个比较行,只有在PHP5的版本才可以使用,
file_put_contents(‘file2.txt‘,‘This is a wq!‘);
?>
<?php
// //file是按照每行来分组存放在一个数组中
// $array_file = file(‘file.txt‘);
//
// //而这个打印出的是文件中的第五行。
// echo $array_file[4];
//readfile是将整个文件读出来,readfile本身能够直接输入浏览器,所以不需要echo
//返回值是文件字节的总长度。
//readfile(‘file.txt‘);
//file_get_contents可以读入数据到缓冲区,然后通过echo来打印
echo file_get_contents(‘file.txt‘);
?>
判断文件是否存在
<?php
//比如读取一个文件的时候,你必须保证这个文件一定要存在,才可以操作
//否则就报错,不让执行
//这个时候就必要做一个检测
//file_exists -- 检查文件或目录是否存在
if (file_exists(‘file.txt‘)) {
echo ‘执行各种各样的文本读写操作!‘;
} else {
echo ‘此本文不存在,请管理员在后台重新生成一下!‘;
}
?>
<?php
//标准函数,内置函数 两种加密函数
echo md5(‘123456‘);
echo ‘<br />‘;
echo sha1(‘123456‘);
echo ‘<hr />‘;
?>
//自定义函数
<?php
//包含参数无返回值的函数
//一般来说,写好的函数,就不用修改了,
//变化的一般是传入进去的参数
function functionArea($radius) {
$area = $radius * $radius * pi();
echo ‘半径为:‘.$radius.‘的面积为:‘.$area;
}
//调用
functionArea(30);
?>
<?php
//包含参数,有返回值
function functionArea($radius) {
$area = $radius * $radius * pi();
return $area;
}
//调用
//这样子大大提高了函数的灵活性
// functionArea(20);整体就得到一个值,在内存里。
echo ‘r为20的面积为:‘.functionArea(20);
?>
<?php
//写一个函数,这里函数要返回三条数据
//在函数里的变量,和函数外的变量没有任何联系,所以写重名,无所谓
function functionInfo($name,$age,$job) {
//$userInfo是个数组
//$userInfo = array($name,$age,$job);
$userInfo[] = $name;
$userInfo[] = $age;
$userInfo[] = $job;
return $userInfo;
}
//调用函数
list($name,$age,$job) = functionInfo(‘吴祁‘,19,‘学生‘);
echo $name.‘今年‘.$age.‘岁了,他还是个‘.$job;
?>
<?php
//之前的传参,都是按值传参
$prices = 50;
$tax = 0.5;
//这个函数没有任何值出来,目前是按值传参
//函数里的变量和函数外的变量没有任何关系
function functionPrices(&$prices,$tax) {
//里面的prices这个变量值已经是75
$prices = $prices + $prices * $tax;
$tax = $tax * $tax;
echo $prices; //75
echo ‘<br />‘;
echo $tax;
echo ‘<br />‘;
echo ‘<br />‘;
}
functionPrices($prices,$tax);
//引用这个概念,我们目前无法掌握,会在OOP时候,重点讲解
echo $prices; //按值传50,按引用就变成75
echo ‘<br />‘;
echo $tax;
?>
<?php
//了解全局变量
//可以将$a设置成全局变量
$a = 5;
function fa() {
global $a; //将$a设置成为全局变量
$a = 2;
}
fa();
echo $a;
?>
<?php
//使用超级全局变量
$GLOBALS[‘a‘] = 5;
function fa() {
$GLOBALS[‘a‘] = 2;
}
fa();
//echo $GLOBALS[‘a‘];
print_r($GLOBALS);
?>