php基础学习(二)

常数与数组

常量

//函数define创建
define('SITE_NAME','Peter的博客');
//关键字const创建
const COUNTRY = '中国';

//关键字echo访问
echo SITE_NAME,COUNTY;
echo constant('SITE_NAME');//函数constant访问
echo constant('COUNTRY');//函数constant访问

echo '<hr><pre>';
print_r(get_defined_constants());//获取系统全部常量,含自定义
echo '<hr>';

#检测常量是否已声明
echo defined('SITE_NAME')?'已定义':'未定义';

数组

  1. 分类
    【根据键名分类】
    1.1 索引数组【默认】,键名是整数。
    1.2 关联数组,键名是字符串,与对象属性可相互转化。
    【键值是否为数组】
    1.1 一维数组:键值为非数组类型,最常用。
    1.1多维数组:键值仍然是数组,使用最多的是二维数组,不推荐嵌套过深。
  2. 创建
    2.1 统一创建。 a r r = [ e l e m e n t 1 , e l e m e n t 2 , . . . ] ; 2.2 逐 个 创 建 。 arr = [element1,element2,...]; 2.2 逐个创建。 arr=[element1,element2,...];2.2arr = []; a r r [ ] = e l e m e n t 1 ; arr[]=element1; arr[]=element1;arr[] = element2,…
  3. 访问,中括号加键名【key】
    3.1 整体:print_r( a r r ) ; v a r d u m p ( arr);var_dump( arr);vardump(arr);
    3.2 逐个:echo a r r a y [ k e y ] : array[key]: array[key]:array[‘name’];
  4. 更新
    4.1 整体。需要通过循环遍历实现。
    4.2 逐个。 a r r [ k e y ] = n e w v a l u e ; 4.3 清 空 或 重 建 。 arr[key] = new_value; 4.3 清空或重建。 arr[key]=newvalue;4.3arr=[]; $arr =
  5. 删除
    5.1 整体。unset( a r r ) ; 5.2 单 个 删 除 键 名 不 重 排 。 u n s e t ( arr); 5.2 单个删除键名不重排。unset( arr);5.2unset(arr[key]);
    5.3 单个删除键名重排[针对索引数组];
    array_splice( a r r , arr, arr,start, c o u n t , [ count,[ count,[newEle]);
    5.4 删除空值元素。array_filter($arr);
    5.5 删除特定元素。foreach + if + unset。
$city = ['合肥','上海','杭州','南京']
$user = ['id' => 10, 'name' => 'Peter', 'course' => 'php', 'grade' => 99];
#关联数组
print_r($user);//整体输出
echo '<hr>';
echo $user['name'];//查看单个元素
$user['name'] = '朱老师';//更新
echo $user['name'];//再次查看
//unset($city);
//print_r($city);

echo '<hr>';
//unset($user['course']);
print_r($user);//整体输出
echo '<hr>';
print_r($city);//原始索引数组

echo '<hr>'
array_splice($city,1,1);//删除第二个元素
print_r($city);//整体输出

常用数组函数

  1. 查询数组中是否存在某个值或某个键名
    1.1 是否存在某个值:in_array( v a l , val, val,arr);
    1.2 是否存在某个键名:array_key_exits( k e y , key, key,arr);
  2. 在数组尾部增删元素(模拟堆栈)
    2.1 添加/入栈:array_push( a r r , arr, arr,val):成功则返回新数组元素个数
    2.2 删除/出战:array_pop($arr):成功则返回出栈元素
  3. 在数组头部增删元素(模拟堆栈)
    3.1 添加/入栈:array_unshift( a r r , arr, arr,val):成功则返回新数组元素个数
    3.2 删除/出栈:array_shift($arr);成功则返回出栈元素。
  4. 数组排序
    4.1 【索引数组】根据值排序:sort()升序,rsort()降序,针对索引数组,键名重排,关联数组会忽略键名
    4.1 【关联数组】根据值排序,键值对应关系不变:asort()升序,arsort()降序
    4.2 【关联数组】根据键名排序,键值对应关系不变:ksort(),krsort();
$books = ['name'=>'PHP经典实例','price'=>'59,'author'=>'Peter'];
echo in_array(59,$books) ?'存在':'不存在';//判断是否存在某个值
echo '<hr>';

echo array_key_exists('name',$books)?'存在':'不存在';

//在尾部增加2个数据
echo array_push($books,500,800);
echo $books['publish']='机械工业出版社';

//在头部追加
echo array_unshift($books, 100, 200, 300);
echo array_shift($books);

$arr = [90,35,120,9,45,30,22,9];
//这两个函数只能通过索引排序
sort($arr);//索引重排
rsort($arr);//倒序

//可以通过键值,键名排序
asort($books);//按键值排序,保持键值关系
ksort($books);//按键名排序,保持键值关系

常用数组函数

1.分割:array_chunk( a r r , arr, arr,num,[true]);true保持原索引
2.合并:array_merge( a r r 1 , arr1, arr1,arr2);同名键名自动覆盖
3.巡航:key()当前键名current()当前值,reset( a r r ) 指 针 复 位 到 第 一 位 , n e x t ( arr)指针复位到第一位,next( arr)next(arr)下移,prev( a r r ) 前 一 个 , e n d ( arr)前一个,end( arr)end(arr)尾部。
4.统计:count( a r r ) 返 回 数 组 中 的 元 素 个 数 , 整 数 。 5. 遍 历 : e a c h ( arr)返回数组中的元素个数,整数。 5.遍历:each( arr)5.each(arr)返回当前元素的索引与关联表示,将自动下移指针。
6.转换:list( v 1 , v1, v1,v2…)=$arr;将数组元素索引部分按顺序转为变量。
掌握用each和list配合完成数组遍历,以后我们还要学到数组专用遍历语句foreach。

示例

$arr = [3,5,10,4,'a'=>'中国','php',39,'mysql','java',true,[100,200,300]];
print_r(array_chunk($arr,3,true));

//合并
$arr1 = array_merge($arr1,$arr2);//合并后更新第一个数组

//巡航输出健值
echo key($arr).'=>'.current($arr).'<br>';
next($arr);
echo key($arr).'=>'.current($arr).'<br>';

//遍历输出第一个元素的索引与关联部分
echo '<pre>';print_r(each($arr2));
//将当前元素的索引部分转为变量
list($key,$value) = each($arr2);
//输出与当前键值对应的$key,$value变量
echo $key.'=>'.$value.'<br>';

条件判断与多分支

  1. 单分支:if(){}
  2. 双分支:if(){}else{}
  3. 多分支:if()elseif(){}elseif()
  4. 三元运算符:条件?true:false。

彻底删除PHP项目的正确步骤

  1. 删除源码
  2. 删除项目对应的数据库。
  3. 如果创建了本地主机和域名,也要一并删除。
  4. 记得以上所有更改,必须重启web服务器才生效。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
信息数据从传统到当代,是一直在变革当中,突如其来的互联网让传统的信息管理看到了革命性的曙光,因为传统信息管理从时效性,还是安全性,还是可操作性等各个方面来讲,遇到了互联网时代才发现能补上自古以来的短板,有效的提升管理的效率和业务水平。传统的管理模式,时间越久管理的内容越多,也需要更多的人来对数据进行整理,并且数据的汇总查询方面效率也是极其的低下,并且数据安全方面永远不会保证安全性能。结合数据内容管理的种种缺点,在互联网时代都可以得到有效的补充。结合先进的互联网技术,开发符合需求的软件,让数据内容管理不管是从录入的及时性,查看的及时性还是汇总分析的及时性,都能让正确率达到最高,管理更加的科学和便捷。本次开发的高校科研信息管理系统实现了操作日志管理、字典管理、反馈管理、公告管理、科研成果管理、科研项目管理、通知管理、学术活动管理、学院部门管理、科研人员管理、管理员管理等功能。系统用到了关系型数据库中王者MySql作为系统的数据库,有效的对数据进行安全的存储,有效的备份,对数据可靠性方面得到了保证。并且程序也具备程序需求的所有功能,使得操作性还是安全性都大大提高,让高校科研信息管理系统更能从理念走到现实,确确实实的让人们提升信息处理效率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值