PHP-正三角形排列

<?
/*
正三角形排列,可依照指定的列數符合第一排一顆、第二排兩顆、第三排三顆依序排列下去。
本程式省略使用者輸入、傳送與接收,直接寫主程式碼。可以應用在其他不同的程式語言。
*/

//1.控制要顯示的列數
//2.輸出星星之前的空白個數
//3-1.判斷該列是輸出一顆星星還是輸出多顆星星
//3-2.若多顆星星,就必須輸出兩顆星之間的空白,並在迴圈判斷是否到結尾了
//3-3.若到結尾,因為不必再輸出星星,所以也不需要輸出空白

 

 

$row="5"; //指定要的總列數

$row-=1;//陣列中起始值從0開始(從0開始的話可以容易看出公式)

for($y=$row;$y>=0;$y–)//控制所有的列數,也就是用地檢的方式給他編號下去。如:43210列。將y遞減,是方便星星左邊空白顯示的判斷
 {
 for($x=0;$x<=$y-1;$x++)//星星左邊需要空白的個數。終止條件:當該列顆數小於等於指定的「列數-1」(這是我自己推出來的公式)
  {
  echo "&emsp;"; //由以上判斷,利用迴圈在這列中輸出一或數個空白
  }
  
  
 if($y==$row)//如果正要顯示的列編號等於指定要的總列數
  {
  echo"●";//只顯示星星
  }
 else if($y<=$row-1 && $y>=0)//若該列編號等於總列數的下一列編號(如第4列) 且 該編號也大於等於0
  {
  for($a=0;$a<=$row-$y;$a++)//從0開始算起,並限制條件:總列數(如4)減去該列的編號值(如321列)
   {
   //顯示星星
   echo"●";
   
   $next=$a+1;//星星之後是否要有空白
   if($next<=$row-$y) //每列最後一顆星星之後會有空白,但為了更完美,在此控制不需要輸出空白
    {echo "&emsp;";}
   }
  }
 
 echo"<br />";//段行
 }
 
 
 
 
 
 
?>

自己寫的PHP自動分頁

這是自己寫的function,如果有人需要PHP寫法的就直接拿去套用或修改吧!
說明:
1.直接使用AptPg();,不用echo
2.用法>> AptPg(資料總數目, 每頁要顯示的筆數, 起始頁碼, 數字的網址連結 [,網址夾帶的變數])

<?
//——————–start
function AptPg($AptPg_AllList, $AptPg_OnePgNum,   $AptPg_NowPg,          $AptPg_Href, $AptPg_BewVal="")
 {
 if(!empty($_GET[AptPg_NowPg])) //如果不是第一次進入頁面,則網址應該會有目前在第幾頁的參數值。
  { $AptPg_NowPg=$_GET[AptPg_NowPg]; } //將$_GET[AptPg_NowPg]的值取代預設的「$AptPg_NowPg=1」
  
 
 /*===========先算出總共要分多少頁===============*/
 $Count=$AptPg_AllList/$AptPg_OnePgNum ;
 $AptPg_AllPg=ceil($Count); //無條件進位
 
 
 for($a=1;$a<=$AptPg_AllPg; $a++)//顯示各頁的數字
  {
  if($AptPg_AllPg==1)//當總頁數只有一頁時不顯示
   {
   continue;
   }
  elseif($AptPg_AllPg!=1)
   {
   if($a!=$AptPg_NowPg)//如果現在的頁數不等於該數字,則顯示連結
    {
    if($AptPg_BewVal!="") //未指定變數值
     {$MixAptPg_BewVal="&".$AptPg_BewVal;}
    else
     {unset($MixAptPg_BewVal);} //拋棄變數
    ?>
                &nbsp;
    <a href="<?="$AptPg_Href";?>?AptPg_NowPg=<?="$a"?>&AptPg_OnePgNum=<?="$AptPg_OnePgNum";?><?="$MixAptPg_BewVal";?>">
                    <?="$a";?>
                </a>
    &nbsp;
                <?
    }
   elseif($a==$AptPg_NowPg)
    {
    echo"&nbsp;"."$a"."&nbsp";
    }
   }
  }
 }
//———————————End

//——————————–範例開始
$AptPg_AllList=20;      //總筆數
$AptPg_OnePgNum=4;      //每頁要顯示幾筆資料
$AptPg_NowPg=2;         //起始在第幾頁
$AptPg_Href="";    //網址
$AptPg_BewVal="";   //網址要夾帶的變數

AptPg($AptPg_AllList,$AptPg_OnePgNum,$AptPg_NowPg ,$AptPg_Href, $AptPg_BewVal);
//——————————–範例結束
?>

讀取資料夾內的檔案

    配合Jquery來實現圖片輪播的時候,可以在Div裡面利用PHP迴圈讀取圖片檔案。
    scandir()是PHP5以後才有。另外也可以用
   
$list=scandir("PageData/IndexImg"); /*scandir()是用來讀取目錄的內容*/
   $class="1";
   foreach($list as $value)
{
if(is_file("PageData/IndexImg"."/".$value))//is_file()檢查是否為一般檔案
 {
 ?>
    <img width="340px"  src="PageData/IndexImg/<?="$value";?>"
       alt="<?="$value";?>"
 
  <?
    if($class==1)//只要在第一張圖片顯示class屬性
     {
   ?>
    class="active"
   <?
   }
   ?>
    />
 <?
       $class="$class"+1;
 }
}

讀取資料夾內的檔案

    配合Jquery來實現圖片輪播的時候,可以在Div裡面利用PHP迴圈讀取圖片檔案。
    scandir()是PHP5以後才有。另外也可以用
   
$list=scandir("PageData/IndexImg"); /*scandir()是用來讀取目錄的內容*/
   $class="1";
   foreach($list as $value)
{
if(is_file("PageData/IndexImg"."/".$value))//is_file()檢查是否為一般檔案
 {
 ?>
    <img width="340px"  src="PageData/IndexImg/<?="$value";?>"
       alt="<?="$value";?>"
 
  <?
    if($class==1)//只要在第一張圖片顯示class屬性
     {
   ?>
    class="active"
   <?
   }
   ?>
    />
 <?
       $class="$class"+1;
 }
}

PHP自動摘錄前幾個字

使用mb_substr這一個函式

使用說明
mb_substr(string str, int start [,int length] [,string encoding]);
mb_substr(輸入字元,開始長數,截取的長度,字元編碼);