php精簡
1. 跪求一個極精簡的php新聞管理系統CMS 只要非常簡單的功能實現: 新聞顯示,後台登陸,後台管理
你自己寫了,要不就看下PHP100視頻裡面那個留言本的製作。
2. php如何將1000行代碼優化成100行
如何壓縮html代碼,讓html文件縮小優化
一、將table改為div布局 - TOP
盡量將table標簽布局html重構div布局,可以節約至少40%的代碼量。由於div代碼少於table布局的html網頁,所以搜索引擎索引權重也優於table布局的html網頁。
二、縮減精簡div、span、ul li等系列標簽 - TOP
布局DIV+CSS網頁時候,我們有時候可以節約一些DIV布局代碼,減少代碼量。
如下案例代碼:
<divclass="divcss5">
<ul>
<li>CSS學習去DIVCSS5li>
<li>我愛DIVCSS5li>
<li>DIV+CSS學習去DIVCSS5li>
ul>
div>
可以改為:
<ulclass="divcss5">
<li>CSS學習去DIVCSS5li>
<li>我愛DIVCSS5li>
<li>DIV+CSS學習去DIVCSS5li>
ul>
這樣可以節約一對div標簽,從而減少html代碼量,起到壓縮html作用。這樣直接對ul命名css樣式類,可以區別在一個頁面不同地方使用ul li列表標簽。
三、刪除多餘空格 - TOP
刪除多餘空格換行,可以有效地壓縮html代碼佔用位元組,一般在開發完成後可以對html中代碼進行刪除換行和空格內容。
可以藉助於DW軟體進行批量刪除html內標簽之間空格
如:
<divclass="divcss5">
<div ...>div>
div>
可以刪除空格與換行後:
<divclass="divcss5"><div ...>div>div>
這樣即可節約空格和換行所佔位元組。
注意的是,網頁發布版的可以藉助於DW進行刪除多餘空格與空行。如果要再編輯,再到DW軟體進行代碼格式化排版即可。
四、表格類型布局時候適當使用table替代div布局 - TOP
如果是本身是表格數據列表排版,我們最好選擇table,因為表格布局使用table優於div布局,使用table布局卻比div布局節約html標簽代碼和節約css樣式。
如下圖表格數據類型,建議採用TABLE標簽+CSS樣式布局
類似這種列表型table表格,推薦使用table標簽布局
五、網頁GZIP壓縮 - TOP
3. PHP 求大神幫忙精簡代碼,越簡越好!
<?php
$PageVal=$_GET['page'];//取得當前頁號
!empty($PageVal)&&is_numeric($PageVal)&&$PageVal>=1or$PageVal=1;//規范當前頁號
$PageNum=mysql_num_rows($result);//取得記錄總數
$PageSize=20;//每頁顯示20條,這個里可以自己定
$PageCount=ceil($PageNum/$PageSize);//計算總共有多少頁$PageVal<=1orprint('<ahref="list.php?page='.($PageVal-1).'">上一頁</a>');for($Cur_Page=1;$Cur_Page<=$PageCount;$Cur_Page++){//循環輸出數字分頁
echo$Cur_Page==$PageVal?'<ahref="#"style="color:#ff0000">'.$Cur_Page.'</a>':'<ahref="list.php?page='.$Cur_Page.'">'.$Cur_Page.'</a>';
}$PageVal>=$PageCountorprint('<ahref="list.php?page='.($PageVal+1).'">下一頁</a>');
4. PHP幫我看下這個代碼如何精簡下。$tciid是二維數組,$myFile是一維數組
<?php
$tciid=(unique_arr($tciid,true));
$myFile = include("comm/converter.php");
$arr=array();
foreach(array_values($tciid) as $tmp){
$arr=array_merge($arr,array_values($tmp));
}
foreach($myFile as $file){
$m=explode(",",$file);
if(in_array($m[0],$arr)){
?>
<li><span><a href="<?=$m[0]?>" title="<?= $m[2] ?>"><?php echo $m[2] ?></a></span></li>
<?
}
}
?>
5. php 簡單的程序設計(輪流攻擊)
胡亂寫了個簡單程序,不過測試程序的時候發現,你的傷害計算有很大的問題。
上面說道:實際傷害=A部隊攻擊力-B部隊防禦力
那麼攻擊最高的騎兵攻擊是30,打在防最低為5的弓兵身上,那麼傷害等於30-5=25,這里倒是沒多大問題,但是又看
實際傷害/B部隊單位血量=本次攻擊殺死敵兵數量,余數進位.
那麼殺死弓兵的數量就等於25/200=0.125 按余數進位也就是1而已 0.125已經是裡面最大的傷害了,所以造成每次無論任意兵種攻擊任意兵種,死亡的單位都是1.
附程序(沒怎麼思考,期待樓下更精簡的演算法):
<?php
//初始化團隊
$team_a=array(
"5"=>set_c("軍團A騎兵甲","cavalry"),
"11"=>set_c("軍團A弓兵甲","archer"),
"14"=>set_c("軍團A弓兵乙","archer"),
"8"=>set_c("軍團A步兵甲","infantry"),
"7"=>set_c("軍團A步兵乙","infantry")
);
$team_b=array(
"8"=>set_c("軍團B騎兵甲","cavalry"),
"9"=>set_c("軍團B騎兵乙","cavalry"),
"13"=>set_c("軍團B弓兵甲","archer"),
"5"=>set_c("軍團B步兵甲","infantry"),
"10"=>set_c("軍團B步兵乙","infantry")
);
//按速度對團隊進行排序
$team_a=spe_sort($team_a);
$team_b=spe_sort($team_b);
//初始化戰斗單位
function set_c($name,$type){
//初始化兵種 infantry 步兵 archer弓兵 cavalry騎兵,兵種=>(攻,防,HP,速度,數量).
$arm=array(
"infantry"=>array("tak"=>20,"def"=>10,"hp"=>250,"spe"=>"20|24","amo"=>120),
"archer"=>array("tak"=>25,"def"=>5,"hp"=>200,"spe"=>"25|27","amo"=>100),
"cavalry"=>array("tak"=>30,"def"=>15,"hp"=>300,"spe"=>"28|30","amo"=>80)
);
$d=$arm[$type];
$d["name"]=$name;
$spe=explode("|",$d["spe"]);
$d["spe"]=rand($spe[0],$spe[1]);
return $d;
}
//速度排序
function spe_sort($array){
foreach($array as $key => $value)
{
$temp[$key] = $value['spe'];
}
arsort($temp);
foreach($temp as $key => $value)
{
$result[$key] = $array[$key];
}
return $result;
}
//戰斗函數 $active=攻擊團隊 $passive=被攻擊團隊
function fight($active,$passive){
//目標選擇規則
$targeting=array(7,4,10,1,13,8,5,11,2,14,9,6,12,3,15);
foreach($active as $k=>$a)
{ foreach($targeting as $t)
{
if(isset($passive[$t]))
{
$hurt=$active[$k]["tak"]-$passive[$t]["def"];
$kill=ceil($hurt/$passive[$t]["hp"]);
$passive[$t]["amo"]=$passive[$t]["amo"]-$kill;
echo "<font color='#0000FF'>".$active[$k]["name"]."</font> 攻擊了 <font color='#0000FF'>". $passive[$t]["name"] ."</font>,共傷害<font color='#ff000'> $hurt </font>點,殺死<font color='#ff000'> $kill </font>個單位.剩餘".$passive[$t]["amo"]."個單位</br>";
if( $passive[$t]["amo"]<=0)
{
echo "×<font color='#ff000'>".$passive[$t]["name"]."</font>被消滅了!</br>";
unset($passive[$t]);
if(!count($passive)){echo "<font color='#ff000'>該軍團已全軍覆沒!戰斗結束....</font>"; die();}
}
break;
}
}
}
echo "-------------------本回合結束,換對方攻擊-------------------</br>";
fight($passive,$active);
}
echo "戰斗開始!</br>";
fight($team_a,$team_b);
?>
6. php開發工具
PHP開發工具排行
1.SublimeText3
Sublime Text是一款流行的代碼編輯器。Sublime Text 具有漂亮的用戶界面和強大的功能,例如代碼縮略圖,Python的插件,代碼段等。還可自定義鍵綁定,菜單和工具欄。Sublime Text 的主要功能包括:拼寫檢查,書簽,完整的 Python API , Goto 功能,即時項目切換,多選擇,多窗口等等。Sublime Text 是一個跨平台的編輯器,同時支持Windows、Linux、Mac OS X等操作系統。<去下載.....>
2.Notepad++7.3.1
Notepad++是在微軟視窗環境之下的一個免費的代碼編輯器。它使用較少的CPU功率,降低電腦系統能源消耗,但輕巧且執行效率高,使得Notepad++可完美地取代微軟視窗的記事本。內置支持多達27種語法高亮度顯示(包括各種常見的源代碼、腳本,能夠很好地支持.nfo文件查看),還支持自定義語言;可自動檢測文件類型,根據關鍵字顯示節點,節點可自由折疊/打開,還可顯示縮進引導線,代碼顯示得很有層次感;可打開雙窗口,在分窗口中又可打開多個子窗口,允許快捷切換全屏顯示模式(F11),支持滑鼠滾輪改變文檔顯示比例;提供了一些有用工具,如鄰行互換位置、宏功能等;可顯示選中文本的位元組數 (而不是一般編輯器所顯示的字數,這在某些情況下,比如 軟體本地化 很方便)。<去下載......>
3.Zend Studio 13.0.1
Zend Studio是一個屢獲大獎的專業PHP集成開發環境,具備功能強大的專業編輯工具和調試工具,支持PHP語法加亮顯示,支持語法自動填充功能,支持書簽功能,支持語法自動縮排和代碼復制功能,內置一個強大的PHP代碼調試工具,支持本地和遠程兩種調試模式,支持多種高級調試功能。
Git和Github支持雲開發部署深度,Zend Framework和Zend Server集成更快、更精簡的IDE
7. php代碼簡化
可以把正則匹配封裝成一個函數,傳入str字元串就可以了,這樣比之前少寫幾段代碼
8. Php網站如何優化才好
優化網站,對於PHP來說主要有以下幾點
代碼分析,找出耗時長或者卡頓的代碼加以優化。
循環太多:循環太多就考慮如何去掉循環,或者優化循環體結構,包括每次提前計算好變數,不在循環體內做過多運算。
IO瓶頸:就是sql語句有缺陷,或者磁碟讀寫過慢,網路帶寬過低。sql優化包括索引優化,啟用redis或memcache,分表分庫等等優先順序從前到後,網上都有很多教程。磁碟讀寫慢,就要考慮上固態硬碟。帶寬就要聯系網路運營商解決
精簡前端頁面。現在頁面功能越來越復雜,卡頓不一定是後台,前端出現問題也很多。包括頁面內容太多(適當縮減一部分網頁內容),js,css,圖片太大(對js,css進行壓縮,去掉冗餘代碼等。使用壓縮格式的圖片,如jpg格式控制圖片大小(盡量在100K甚至10K以內)啟用網頁緩存等)
深度優化性能,包括採用更快的PHP(PHP7.2),更快的伺服器(Linux+nginx),更快的mysql(讀寫分離)等等。
9. 求php自定義函數達到簡化include()函數的目的
作用域問題。
你在一個function里將另外一個文件include,那麼「另一個文件」里的PHP都是在你的function的作用域里執行,你的「另一個文件」里將$abc輸出,但在你的function里,並不存在$abc,所以會輸出空。
1、你這樣做,只是為了少打幾個字母,而引來很多問題,如出錯率高了,可維護性低了。
2、你確實要省那些代碼,你可以這么做:
寫一個方法:
function fun1($tpl){
$templeurl="temple/deafult/";
return $templeurl.'label/'.$tpl.'.html';
}
在你的my.php里:
include(fun1('foot'));