zoukankan      html  css  js  c++  java
  • 自己一晚上总结的php基础知识!好累。好充实。

    为了巩固自己的基础提升自己的技术。花了一晚上的时间结合w3c上的非常基础的东西,和自己的部分见解,写了不少,望大神们指正,指导。。

    <?php
        /*
        这段话必须要写在开篇啊!死老猫,你又刺激我!不过认识你非常棒!不认识你我就不受刺激就不会知道自己有多傻逼!益友!谢谢你这么久的关照!还有你丫别考研了。你在考研我。。。。专科生怎么混???2014-03-08 06:03:07
       date_default_timezone_set('PRC');
       echo date("Y-m-d");//设置时区。搞定 echo date("Y-m-d h:m:s",strtotime("-4 hours 1500 seconds"));我电脑时间是乱的。我这样写。。。也不出正确的结果。
    */
          echo"<br>";
         $a = "wangqiyang"; 
         echo strlen($a);echo "<br>";
         echo strpos($a,"qi")."<br>";
         /*翻了翻自己在csdn上的回复发现了strpos的用法。xunzuning提供的,php板块第一牛人!
             <input id="flaga" type ="checkbox" value="a" name="flags[]"<?php if(strpos($row['flag'],'c') !== false) echo "checked='checked'" ?>/>特荐[a]
                strpos 返回整数(找不到返回逻辑假)
                'true' 在数值比较中被转换为 0
                如果 $row['flag'] 第一个字符为 c 时,恰巧被匹配
                其他字符返回的都不是 0,所以不会匹配成功
         */
         //运算符//++
         $a = 2;
    
         echo $a++;//2
         echo "
    ";
         echo ++$a;//4  这里可以看出++$a 和$a++的区别。$a++先赋值给$a.++$a先加在赋值
         //--那么同理
         echo "<br>";
         $a = 2;
         echo $a--;//2
         echo "
    ";
         echo --$a."<br>";//0
         //=
         $a = 3;
         $b = $a;
         echo $b."<br>";
         //+=
         $x=1;
         $z = 3;
         $x+=$z;//$x=$z+$x
         echo $x."<br>"; //6
         //-=
         $d=1;
         $c=1;
         $d -= $c;
         echo $d."<br>";//0
         //*=
         $a=2;
         $b=3;
         $b *= $a;//$b = $b*$a
         echo $b."<br>";//6
         ///=
         $a=2;
         $b=2;
         echo $a /= $b;
         echo "<br>";
         //.=
         $a=1;
         $b=2;
         echo $a.=$b."<br>";//12 .=比较常用
         $a = "wang";
         $b = "zhao";
         echo $a.=$b."<br>";//wangzhao
         //%=
         $a=1;
         $b=2;
         echo $a/=$b;//0.5
         echo "<br>";
         //==  双等于就是值相等比如false==0这个也是真的。
         $a="false";
         $b=0;
         echo $a==$b;//1
         echo "<br>";
          // === 绝对相等。就是值和类型都相等
         $a = 1 ;
         if($a === true){
             echo 1;
         }else{
             echo 0;
         }
         echo "<br>";
         //&&中文和的意思
         $a=3;
         $b=2;
         if($a>0&&$b>0){
             echo 1;
             echo "<br>";
         }
         //||中文非得意思。即两个条件中有一个为真就是真
         $a = 2;
         $b = 3;
         if($a>0||$b<0){
             echo 1;
             echo "<br>";
         }
         $a = 2;
         $b = 3;
         $c = 4;
         $d = 5;
         if($a>0&&$b>0||$c>5){
             echo "true";
         }else{
             echo "false";
         }
         echo "<br>";//通过这个例子可以看到php中运算方式也是从左到又的并没有超过我们的认知^_^
         //!   不等于
         $a = 2;
         if($a != 3){
             echo true;
         }
         echo "<br>";
        
         //switch语句
         $aa=1;
         switch ($aa) {
             case '1':
                 echo "this is 1";//输出this is 1
                 break;
             
             default:
                 echo "nothing";
                 break;
         }
         echo "<br>";
         $aa=2;
         switch ($aa) {
             case '1':
                 echo "this is 1";
                 break;
             
             default:
                 echo "nothing";//输出nothing
                 break;
         }
         echo "<br>";//switch好像是比if  else运行的速度快。
         //数组
         $a = array(1,2,3);//一位数组
         echo $a[0]."
    ".$a[1]."
    ".$a[2]."<br>";//数组的键值是从0开始的不是1
         $aa = array(1=>2,2=>3,3=>4);
         echo $aa[1]."
    ".$aa[2]."
    ".$aa[3];//这样就改变了键值
         //print_r($a);//打印数组常用方法
         echo "<br>";
         $aaa = array("one"=>array("a","b"),"two"=>array("c","d"),"there"=>array("e","f"));
         echo $aaa['one'][1]."
    ".$aaa['two'][1];//b d。这就是取得数组中某个固定位置的方法
         echo "<br>";
         //while 循环
         $a = 1;
         while($a<4){
             $a++;
             echo "
    ";
             echo $a;//234
         }
         echo "<br>";
         //do while
         $a = 0;
         do{
             $a++;
             echo "
    ";
             echo $a;
         }while ($a>4);//1 先执行do有上至下
         echo "<br>";
         //for循环
         for($i=0;$i<3;$i++){
             echo "3次";
         }
         echo "<br>";
          //复杂点的用strlen函数
         $a = "wang";
         for($i=0;$i<strlen($a);$i++){
             echo "
    ";
             echo "4ci";
         }
         echo "<br>";
         //foreach循环
         $a = array(1 ,2,3,4,5 );
         foreach ($a as $k=>$v){
             echo $k."=>";
             echo $v;
             echo "
    ";
         }
         echo '<form action="test.php" method="post">';
         echo '<input type="text"name="name">';
         echo '<input type="submit" value="submit">';
         echo '</form>';
         //$name = $_POST['name'];
         $name = $_REQUEST['name'];//不论你用哪种方法传参都可以用$_REQUEST接收,但是并不建议使用这种方法,因为他影响执行效率。在博客上看到的具体有多影响不清楚。
         echo $name;//post和get传参的区别。post能传递比较大的数据而get只能专递比较小的。post将不会显示参数get可以显示参数
         echo "<br>";
         //时间戳。终于到这里了。死熊猫问我时间戳是什么。我回答说:自1几年到现在的时间单位好像是毫秒。然后他说,非常好!如果我是面试官很高兴给你刷下去了!死猫,我和他要了半天他的面试题都不给强烈鄙视之!手册上如是写到:时间戳是1970年1月1日到现在的秒数!
         //date函数
         //当前时间.
      date_default_timezone_set("PRC");
    echo date("Y-m-d h:i:s");//2014-03-08 05:43:50不知道这个苦比的电脑是怎么回事显示这个结果。。现在正确的时间是01:44 echo "<br>"; echo time("Y-m-d");//1394300809time()函数将给当前时间显示成时间戳格式 echo "<br>"; echo date('Y-m-d h:i:s',"1394300809");//将时间戳转换为时间格式。 //显示明天、明天、下周、下个月的时间 echo "<br>"; echo date('Y-m-d',strtotime('-1 day'));//昨天 echo "<br>"; echo date('Y-m-d',strtotime('+1 day'));//明天 echo "<br>"; echo date('Y-m-d',strtotime('+1 week'));//下周的今天 echo "<br>"; echo date('Y-m-d',strtotime('+1 month'));//下个月。这里充分的说明这是老外开发的。。。 /* include,require,include_once,require_once include 可以没有没有也会继续向下执行 require 必须有没有就会报出一个致命的错误,结束运行 include_onece 顾名思义之引入一次require_once同理 include 'aa.php';这四个东西大多用于引入那些封装的方法。比如数据库的连接的封装方法 */ //大块头。文件的上传。由于大学的时候没有好好学习!导致html基础超差!php和html混写一直是我的痛!这些是照着w3c手册超的^_^ echo '<form action="test.php" method="post" enctype="multipart/form-data">';//enctype是form标签的。表示你在提交表单时要使用那种类型。不懂要去百度。。。 echo '<label for="file">文件名:</label>'; echo '<input type="file" name="file" id="file"/>'."<br>"; echo '<input type="submit" name="submit" value="上传"/>';//在chorm浏览器中汇显示未选择文件和已选择的上传的文件名称。ie浏览器中就不可以。。ie果然坑爹! if(($_FILES["file"]["type"]=="image/gif")||($_FILES["file"]["type"]=="image/jpeg")||($_FILES["file"]["type"]=="image/pjpeg")&&($_FILES["file"]["size"]<200000)){ if (($_FILES["file"]["error"])>0) { echo "错误提示:".$_FILES["file"]["error"]."<br>"; }else{ echo "文件名:".$_FILES["file"]["name"]."<br>"; echo "文件类型:".$_FILES["file"]["type"]."<br/>"; echo "文件大小:".($_FILES["file"]["size"]/1024)."kb<br/>"; echo "储存位置:".$_FILES["file"]["tmp_name"]."<br/>"; if(file_exists("asd/".$_FILES["file"]["name"])){ echo $_FILES["file"]["name"]."文件名存在。"; }else{ move_uploaded_file($_FILES["file"]["tmp_name"],"asd/".$_FILES["file"]["name"]);//这行代码提示错误!但是下面的echo还是出来了!不知道怎么回事!!!现在头晕有时间再改,死猫看到的话测试下,为什么提示错误!谢谢! echo "储存成功!"; } } } else{ echo "无效文件!"; } echo "<br>"; /*cookie session这块好难,我也不会啊。用得太少了。应用的很多但是我用得很少,没法子只能把w3c教程抄写一遍了! cookie常用与识别用户。比如我登陆一个网站,访问不同页面就用到cookie因为他你才不必每访问一个页面就输入一次账号密码。涉及到header信息?这里就更不懂了!死猫教我。我好像写错了,看到session我感觉好像写错了! 创建cookie函数:setcookie(); 语法setcookie(name(cookie名字),value(赋值),expire(过期时间),path(路径),domain(域?不懂!求解释)); setcookie()必须写在html前面: <?php setcookie("panda","badpanda",time()-360000000000000000);你去死吧!哈哈,原来写代码挺好玩的吗! ?> <html> <head>cookie应用</head> <body> <?php if(isset($_COOKIE("panda"))){ echo "去死吧!".$_COOKIE["user"]."<br/>"; }else{ echo"由于未操作时间过久请重新登陆";//这里我想叫他跑到登陆页面,怎么写?
                $url = "xxx";
                echo "< script language='javascript' type='text/javascript'>";
                echo "window.location.href='$url'";  
                echo "< /script>";  
                    }
                ?>
            </body>
         </html>
    
    
    
         */
    
    
    
    
    
    
         //php操作mysql增删改查系列!绝对自己写的。哈哈,因为昨天面试就是这个,深受打击故好好写了写。首先在数据库中建立一个表test两个字段一个自增的id一个姓名dos里的就不写了,不是很熟悉~直接用phpmyadmin建了!
         //服务器名
         $mysql_sname = "localhost";
         //用户名
         $mysql_uname = "root";
         //密码
         $mysql_pwd = "";
         //数据库名
         $mysql_dbname = "badpanda";
         //连接数据库
         $conn = mysql_connect($mysql_sname,$mysql_uname,$mysql_pwd) or die("数据库连接失败!");
         //选择操作的库
         mysql_select_db($mysql_dbname,$conn);
       //设置编码格式
       mysql_query("SET NAMES UTF-8");
    //插入数据 $sql_i = "insert into test values('','熊猫')";//我刚才插入数据库之后成为了乱码(已解决) mysql_query($sql_i); //查询显示数据 $sql_s = "select * from test"; $result = mysql_query($sql_s); //提取并显示数据 while ($row = mysql_fetch_row($result)) { echo "<br>"; for($i=0;$i<count($row);$i++){ echo $row[$i]; } } //只显示第一条数据 /*$row = mysql_fetch_row($result); print_r($row);*/ //删除 $sql_d = "delete from test where id=1"; mysql_query($sql_d); //更新 $sql_u = "update test set name = 'fuck' where id=2"; mysql_query($sql_u); mysql_close($conn); /* 自己工作这几个月接触到的个人认为比较复杂的sql。方正当时自己是不会写。。由此可见自己是有多渣难怪能猫老是嘲讽我。。 select * from tt a where 2>=(select count(*) from tt where a.title=title); select userid,group_concat( title),group_concat(distinct oid) from `djs_shops_products` group by userid; left join 还是死猫告诉我的。。跟你混学到不少知识。据说这个效率高? */ //php与xml //php与ajax ?>
  • 相关阅读:
    Java核心技术Java程序设计
    Mac下查看 Java 安装目录位置和安装数量
    Intellij IDEA快捷键与使用小技巧
    Java 8 新特性 用 Collectors 对 List 去重
    onInterceptTouchEvent()与onTouchEvent()的机制
    Android 开发之多线程处理、Handler
    安卓中使用XmlPullParser解析xml文件
    监控部署nagios+snmp
    阿里RDS数据库 全量备份恢复到本地MYSQL
    20120412
  • 原文地址:https://www.cnblogs.com/legendyang/p/3589504.html
Copyright © 2011-2022 走看看