博客列表 >12-2 php基础知识复习 九期线上班

12-2 php基础知识复习 九期线上班

介子
介子原创
2019年12月03日 16:54:13488浏览

实例

<?php 
//数据放到内存中的数据段 
$data = "php.cn";
//代码放到内存中的代码段
function function_name($name){
	return $name ."欢迎您";
}

echo function_name($data);

//变量名是那么,变量值类型是字符串
$name ='jzsmile';
$age=20;
$isMarried=true;

//echo 回显 无返回值
echo '年龄'.$age.'<br>';

//布尔值会发生类型转化 true->1  false -> 空  不是null
echo '是否未婚:'.$isMarried.'<br>';

//字符串
echo '姓名:'.$name.'<br>';

//字符串虽然是单值,但却可以象数组一样访问
echo '我的姓是:'.$name{0}.'<br>';

//print:打印 与echo类似但是有返回值  1
print('年龄'.$age.'<br>');
echo print('年龄'.$age.'<br>');

//print_r($var,false|true): 以更容易理解的方式打印变量,r:readily 易于理解
//如果仅仅打印一个变量 看上去似乎和之前没有区别
print_r($name);
echo '<br>';

//如果添加了第二个参数true  则返回信息return 而不是输出echo
echo print_r($name,true);

//这样做 ,对于简单单值意义不大  但对于复合数据意义非凡  
$data = range(1,20)//因为第二个参数的存在使该函数只是返回数据没有输出
echo '<pre>'.print_r($data,true).'</pre>';
//var_export($var,false|true):输出|返回变量的字符串表示
//其实就是定义该变量的php代码而已 例如 字符串会自动加上定界符
var_export($name);
echo '<br>';
//var_dump($var1,$var2...):打印一个或多个变量结构包括类型与值
var_dump($name,$age,$isMarried);

//demo3
//数组的定义
//(一)索引数组
//1.定义
//如果有$user=[]; 就是追加式定义
//直接定义 ,索引默认从0开始 也可自定义 ,并不要求连续
$user[] = 101;
$user[] = 'admin';
$user[] = 'admin@php.cn';

//推荐方式
$user = [101,'admin','admin@php.cn'];

//2.访问:单个或多个成员
//简单变量中的echo print 只能访问单个成员 不能输出数组 
//单个数组成员
echo $user[2].'<br>';//email
print_r($user);
echo '<pre>'.print_r($user,true).'<pre>';
var_dump($user);
echo '<hr>';
//3. 遍历:可循环 访问全部成员
//3.1 for :索引数组最常用的是for循环
$res='';
for ($i = 0;$i<count($user);$i++){
       $res.=$user[$i].',';
}
//去掉最后 ',',输出便利结果
echo rtrim($res,',');
echo '<hr>';
//3.2 foreach
$res = '';
foreach ($user as $item){
      $res.=$item.',';
}
echo rtrim($res,',');
echo '<hr>';
//4 转换 
//4.1 索引数组与变量之间的转换,mvc  中模板赋值会用到
list($id,$name,$email) = $user;
echo $id.'--'.$name.'--'.$email.'<br>';
//4.2 索引数组 转字符串  :见数组扁平化存贮会用到  例如将数组存储到数据表的字段中
$str = implode(',',$user);
echo $str,'<br>';
$sql ="INSERT `users` SET `comment` = {$str};";

//附加知识  将一个字符串 (例如从数据表中读到的)  再转化为数组
$arr = explode(',',$str);
print_r($arr);
echo '<br>';
//注意索引数组不推荐使用while循环 如果一定这麽做 也可以写但是each() 有可能在以后版本删除 可能看到不推荐使用的警告信息
while (list($key,$value) = each($user)){
echo '['.$key.']=>'.$value.'<br>';
}

//----------------------------------------------------------------------------
//(二)关联数组 
//1. 定义
$user = ['id'=>101,'name'=>'admin','email'=>'admin@php.cn'];
//2.访问
echo $user['email'].'<br>';
print($user);
var_dump($user);
var_export($user);
echo '<hr>';

//3.遍历
//3.1  foreach 推荐 
foreach ($user as $key=>$value){
 echo'['.$key.']=>'.$value.'<br>';
}
//3.2 for 并不适合用来遍历关联数组 但可以借助数组指针 来完成遍历
$res= '';
for($i = 0;$i<count($user);$i++){
$res.=current($user).',';
next($user);
}
echo rtrim($res,',');
echo '<hr>';
//4. 转换
//4.1 关联数组 与变量之间的转换 (与索引数组略有区别)
//索引数组需要list()提供变量名 但关联数组直接用键值作为变量名就可以
extract($user);

//变量组装为关联数组
$dsn = 'mysql:host=localhost;dbname=demo';
$username = 'root';
$password = 'root';
$linkParams = compact('dsn','username','password');
print_r($linkParams);
echo '<br>';

//4.2 关联数组转化为索引数组
print_r(array_values($user));

运行实例 »

点击 "运行实例" 按钮查看在线实例

1.jpg2.jpg3.jpg4.jpg

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议