Blogger Information
Blog 18
fans 0
comment 0
visits 10895
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
循环与网络请求
手机用户1631860753
Original
608 people have browsed it

一.循环:计算循环

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);
  • 输出
Correcting teacher:PHPzPHPz

Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post