为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
PHP进阶篇_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

PHP进阶篇

Jason PHP开发工程师
难度初级
时长 9小时28分
  • php 自带函数前面都是两个下划线 __
    查看全部
  • $car->name 相当于java中 car.name
    查看全部
  • 可变函数的调用方法为变量名加括号。(注意:变量名前的要写‘$’符号)
    查看全部
    0 采集 收起

    2016-10-03

  • <a>链接用tp规则访问User/index并传参数时,User类控制器会不会先执行构造方法,比如我在构造方法里面调用当前类控制器的其他方法,如果其中的方法有返回值那怎么获取?
    查看全部
  • 这一章节有点难理解
    查看全部
    0 采集 收起

    2016-10-01

  • //填充背景 imagefill($im, 0, 0, $gray); //画边框 imagerectangle($im, 0, 0, $w-1, $h-1, $black); //随机绘制两条虚线,起干扰作用 $style = array ($black,$black,$black,$black,$black, $gray,$gray,$gray,$gray,$gray ); imagesetstyle($im, $style); $y1 = rand(0, $h); $y2 = rand(0, $h); $y3 = rand(0, $h); $y4 = rand(0, $h); imageline($im, 0, $y1, $w, $y3, IMG_COLOR_STYLED); imageline($im, 0, $y2, $w, $y4, IMG_COLOR_STYLED); //在画布上随机生成大量黑点,起干扰作用; for ($i = 0; $i < 80; $i++) { imagesetpixel($im, rand(0, $w), rand(0, $h), $black); } //将数字随机显示在画布上,字符的水平间距和位置都按一定波动范围随机生成 $strx = rand(3, 8); for ($i = 0; $i < $num; $i++) { $strpos = rand(1, 6); imagestring($im, 5, $strx, $strpos, substr($code, $i, 1), $black); $strx += rand(8, 12); } imagepng($im);//输出图片 imagedestroy($im);//释放图片所占内存 }
    查看全部
    0 采集 收起

    2018-03-22

  • <?php session_start(); getCode(4,60,20); function getCode($num,$w,$h) { $code = ""; for ($i = 0; $i < $num; $i++) { $code .= rand(0, 9); } //4位验证码也可以用rand(1000,9999)直接生成 //将生成的验证码写入session,备验证时用 $_SESSION["helloweba_num"] = $code; //创建图片,定义颜色值 header("Content-type: image/PNG"); $im = imagecreate($w, $h); $black = imagecolorallocate($im, 0, 0, 0); $gray = imagecolorallocate($im, 200, 200, 200); $bgcolor = imagecolorallocate($im, 255, 255, 255);
    查看全部
    0 采集 收起

    2018-03-22

  • 使用session来存储用户的登录信息 session可以用来存储多种类型的数据,因此具有很多的用途,常用来存储用户的登录信息,购物车数据,或者一些临时使用的暂存数据等。 用户在登录成功以后,通常可以将用户的信息存储在session中,一般的会单独的将一些重要的字段单独存储,然后所有的用户信息独立存储。 $_SESSION['uid'] = $userinfo['uid']; $_SESSION['userinfo'] = $userinfo; 一般来说,登录信息既可以存储在sessioin中,也可以存储在cookie中,他们之间的差别在于session可以方便的存取多种数据类型,而cookie只支持字符串类型,同时对于一些安全性比较高的数据,cookie需要进行格式化与加密存储,而session存储在服务端则安全性较高。
    查看全部
  • 删除与销毁session 删除某个session值可以使用PHP的unset函数,删除后就会从全局变量$_SESSION中去除,无法访问。 session_start(); $_SESSION['name'] = 'jobs'; unset($_SESSION['name']); echo $_SESSION['name']; //提示name不存在 如果要删除所有的session,可以使用session_destroy函数销毁当前session,session_destroy会删除所有数据,但是session_id仍然存在。 session_start(); $_SESSION['name'] = 'jobs'; $_SESSION['time'] = time(); session_destroy(); 值得注意的是,session_destroy并不会立即的销毁全局变量$_SESSION中的值,只有当下次再访问的时候,$_SESSION才为空,因此如果需要立即销毁$_SESSION,可以使用unset函数。 session_start(); $_SESSION['name'] = 'jobs'; $_SESSION['time'] = time(); unset($_SESSION); session_destroy(); var_dump($_SESSION); //此时已为空 如果需要同时销毁cookie中的session_id,通常在用户退出的时候可能会用到,则还需要显式的调用setcookie方法删除session_id的cookie值。
    查看全部
  • 使用session 在PHP中使用session非常简单,先执行session_start方法开启session,然后通过全局变量$_SESSION进行session的读写。 session_start(); $_SESSION['test'] = time(); var_dump($_SESSION); session会自动的对要设置的值进行encode与decode,因此session可以支持任意数据类型,包括数据与对象等。 session_start(); $_SESSION['ary'] = array('name' => 'jobs'); $_SESSION['obj'] = new stdClass(); var_dump($_SESSION); 默认情况下,session是以文件形式存储在服务器上的,因此当一个页面开启了session之后,会独占这个session文件,这样会导致当前用户的其他并发访问无法执行而等待。可以采用缓存或者数据库的形式存储来解决这个问题,这个我们会在一些高级的课程中讲到。
    查看全部
    0 采集 收起 来源:使用session

    2018-03-22

  • session与cookie的异同 cookie将数据存储在客户端,建立起用户与服务器之间的联系,通常可以解决很多问题,但是cookie仍然具有一些局限: cookie相对不是太安全,容易被盗用导致cookie欺骗 单个cookie的值最大只能存储4k 每次请求都要进行网络传输,占用带宽 session是将用户的会话数据存储在服务端,没有大小限制,通过一个session_id进行用户识别,PHP默认情况下session id是通过cookie来保存的,因此从某种程度上来说,seesion依赖于cookie。但这不是绝对的,session id也可以通过参数来实现,只要能将session id传递到服务端进行识别的机制都可以使用session。
    查看全部
  • 更新与删除数据 数据的更新与删除相对比较简单,只需要构建好相应的sql语句,然后调用mysql_query执行就能完成相应的更新与删除操作。 $sql = "update user set name = '曹操' where id=2 limit 1"; if (mysql_query($sql)) { echo '更新成功'; } 同样的删除可以使用类似以下的代码: $sql = "delete from user where id=2 limit 1"; if (mysql_query($sql)) { echo '删除成功'; } 对于删除与更新操作,可以通过mysql_affected_rows函数来获取更新过的数据行数,如果数据没有变化,则结果为0。 $sql = "update user set name = '曹操' where id=2 limit 1"; if (mysql_query($sql)) { echo mysql_affected_rows(); } <?php //连接数据库 mysql_connect('127.0.0.1', 'code1', ''); mysql_select_db('code1'); mysql_query("set names 'utf8'"); //预设数据以便进行更新操作 mysql_query("insert into user(name, age, class) values('王二', 19, '高三五班')"); $id = mysql_insert_id(); //在这里更新id为$id的行的名字为李白 mysql_query("update user set name='李白' where id=$id limit 1"); //输出更新数据条数 echo '数据更新行数:'.mysql_affected_rows(); mysql_query("delete from user where id='$id'");
    查看全部
  • <?php //连接数据库 mysql_connect('127.0.0.1', 'code1', ''); mysql_select_db('code1'); mysql_query("set names 'utf8'"); //预设翻页参数 $page = 2; $pagesize = 2; //在这里构建分页查询 $offset = ($page - 1) * $pagesize; $sql = "select * from user limit $offset, $pagesize"; //获取翻页数据 $result = mysql_query($sql); $data = array(); while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) { $data[] = $row; } echo '<pre>'; print_r($data); echo '</pre>';
    查看全部
  • 查询分页数据 上一节中,我们了解到通过循环可以获取一个查询的所有数据,在实际应用中,我们并不希望一次性获取数据表中的所有数据,那样性能会非常的低,因此会使用翻页功能,每页仅显示10条或者20条数据。 通过mysql的limit可以很容易的实现分页,limit m,n表示从m行后取n行数据,在PHP中我们需要构造m与n来实现获取某一页的所有数据。 假定当前页为$page,每页显示$n条数据,那么m为当前页前面所有的数据,既$m = ($page-1) * $n,在知道了翻页原理以后,那么我们很容易通过构造SQL语句在PHP中实现数据翻页。 $page = 2; $n = 2; $m = ($page - 1) * $n; $sql = "select * from user limit $m, $n"; $result = mysql_query($sql); //循环获取当前页的数据 $data = array(); while ($row = mysql_fetch_assoc($result)) { $data[] = $row; } 在上面的例子中,我们使用了$m与$n变量来表示偏移量与每页数据条数,但我们推荐使用更有意义的变量名来表示,比如$pagesize, $start, $offset等,这样更容易理解,有助于团队协作开发。
    查看全部
  • <?php //连接数据库 mysql_connect('127.0.0.1', 'code1', ''); mysql_select_db('code1'); mysql_query("set names 'utf8'"); //数据预处理 防止查询不到数据 mysql_query("insert into user(name, age, class) values('王二', 19, '高三五班')"); //进行数据查询 $sql = "select * from user limit 1"; $result = mysql_query($sql); //在这里获取一行数据 $row=mysql_fetch_array($result); echo '<pre>'; print_r($row); echo '</pre>';
    查看全部

举报

0/150
提交
取消
课程须知
需要有一定的网页基础知识如HTML、CSS样式等,并且已经学习完成《PHP入门篇》对PHP已经有了简单的了解,如变量、常量、数据类型等。
老师告诉你能学到什么?
全面的掌握PHP的理论知识与实践中的应用方法,提高编程能力与掌握网页开发技能。
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!