一.循环:计算循环

1.1 while循环

  • while 可以重复执行的一个循环
  • () 里面的条件可以是 >,>=,<= ; == 和 === 不行
  • 死循环 : 是说这个程序一直执行下去,不结束
  • while 先判断在执行
  • do while 先执行在判断
  • 例1:while(){}
  1. $int = 1;
  2. while($int < 10){
  3. echo '第'.$int.'次';
  4. echo '<hr>';
  5. $int++;
  6. }
  • 例2: do{}while();
  1. $int = 1;
  2. do{
  3. echo '第'.$int.'次';
  4. echo '<hr>';
  5. }while($int < 10);
  • 例1,例2输出

1.2 for 循环

  • for循环的()里面不只一个条件,里面有三个条件语句
  • 在写条件语句的时候符号不能用错了,不然可能会变成死循环
  • 在循环中要加 $int++; 不然会是死循环
  • 注意,如果赋值比较大,并且数字比后面的大,那么符号就要用 —
  • break 结束命令
  • continue 其中一条数据不能输出

  • 例 break ,循环5次

  1. for($int=1;$int<10;$int++){
  2. echo '第'.$int.'遍';
  3. echo '<hr>';
  4. if(isset($_GET['num']) && $int=$_GET['num']){
  5. break;
  6. }
  7. }
  • 输出

  • 例 continue 第5天休息

    1. for($int=1;$int<10;$int++){
    2. if(isset($_GET['num']) && $int=$_GET['num']){
    3. break;
    4. }
    5. echo '第'.$int.'次';
    6. echo '<hr>';
    7. }
  • 输出

二.函数

  • 随机数函数
  • mt_rand 只能是数字
  • 例 随机颜色验证码示例php代码

    1. $code = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
    2. for($i=0;$i<4;$i++){
    3. echo '<span style="color: rgb( ' . mt_rand(0, 255) . ' , ' . mt_rand(0, 255) . ' ,' . mt_rand(0, 255) . ' );">' . $code[mt_rand(0, strlen($code) - 1)] . '</span>';
    4. }
  • 输出随机不同颜色的4位验证码

  • 九九乘法表案例
  1. echo '<table border="1">';
  2. for ($i = 1; $i <= 9; $i++) {
  3. echo '<tr>';
  4. for ($y = 1; $y <= $i; $y++) {
  5. echo '<td>';
  6. echo $y . '*' . $i . '=' . $i * $y;
  7. echo '</td>';
  8. }
  9. echo '</tr>';
  10. }
  11. echo '</table>';
  • 效果

三.超级全局变量

  • $_GET 在网址上显示出来,在浏览器的收藏里面使用很方便
  • $_POST 不显示出来,这样做更安全
  • $_COOKIE , $_SESSION, 是缓存,保护用户信息的
  • $_FILES 文件上传信息
  • 如果传值是可以被别人看的就用,GET
  • 如果传值不能让别人看,比如账号,密码,等这种加密的东西,就用, POST
  • 要注意 POST 和 GET 和 COOKIE 会出现重复的下标
  • $_REQUEST: 一维数组:包含了$_POST ,$_GET, $_COOKIE

  • $GLOBALS 全部全局变量的组合,是二维数组

  • $_SERVER 服务器的环境,会使用里面的下标是时间戳,也会有函数获取时间戳
  • $_ENV 也是环境变量

四.预定义,常量

  • echo FILE 查看当前文件
  • echo DIR 查看当前目录
  • echo PHP_VERSION 查看当前PHP版本,设置后台管理程序,显示在后台,给开发者看的

五.网络请求

  • file() 把整个文件读入到一个数组中
  • file 可以抓取别人网页的数据
  • 我们的需求是需要网络请求的,就算不抓取别人的数据,也会用到别人的接口,只要用到第三方的功能,就会用到网络请求
  • curl 也是网络请求,我们用这个是1因为它可以使用 POST
  • 例 邮政编码查询
  1. function get_url($url, $data, $is_post = 0)
  2. {
  3. $ch = curl_init();
  4. if ($is_post == 0) {
  5. if (!empty($data)) {
  6. $url .= '?';
  7. foreach ($data as $k => $v) {
  8. $url .= $k . '=' . $v . '&';
  9. }
  10. }
  11. }
  12. curl_setopt($ch, CURLOPT_URL, $url);
  13. curl_setopt($ch, CURLOPT_TIMEOUT, 30); // 设置curl允许执行的时间
  14. curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); // 爬取重定向页面
  15. curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 3); // 在发起连接前等待的时间,如果设置为0 则无限等待
  16. curl_setopt($ch, CURLOPT_AUTOREFERER, 1); // 自动设置referer,防止盗链
  17. curl_setopt($ch, CURLOPT_HEADER, 0); // 显示返回 header 区域内容
  18. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // 要求结果保存到字符串中还是输出到屏幕上
  19. curl_setopt($ch, CURLOPT_USERAGENT, 'Data'); // 在HTTP请求中包含一个 "User-Agent:"头的字符串
  20. curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1); // 强制使用 HTTP/1.1
  21. if ($is_post == 1) {
  22. curl_setopt($ch, CURLOPT_POST, 1);
  23. curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
  24. }
  25. $html = curl_exec($ch); // 去执行curl 并且打印出来,但是如果关闭了,就不会打印出来了
  26. if (curl_errno($ch)) {
  27. return curl_errno($ch);
  28. }
  29. curl_close($ch); // 关闭
  30. return $html;
  31. }
  32. $data = [
  33. 'key' => '385b74677e7c5538e5fdebcf3f4e7664',
  34. 'postcode' => '646200',
  35. 'pagesize' => '5'
  36. ];
  37. echo get_url('http://v.juhe.cn/postcode/query', $data);
  • 输出

更多相关文章

  1. PHP循环学习八:统计1~10000的完数个数,并输出全部完数
  2. 如何通过PHP程序输出全部三位回文数
  3. PHP循环学习九:获取给定两数间的最大公因数
  4. PHP如何输出20世纪的所有闰年
  5. 运算符以及函数的使用
  6. 1. 循环省市区 2. print_f打印其中一个城市和区
  7. foreach循环
  8. 循环读取数组
  9. 第十二课 数组循环

随机推荐

  1. 基本类型转 String
  2. Java内存模型-防止内存泄漏
  3. k8s rbac 权限管理控制创建过程+理论知识
  4. 怎样处理 InterruptedException
  5. Java集合HashSet源码剖析
  6. 实时数仓|架构设计与技术选型
  7. 回到基础:封装集合
  8. 自学第五十天
  9. Android应用程序的默认最大内存值以及修
  10. 无限重置idea试用期过期时间插件 简单方