張雙php
㈠ 如何在Windows下配置搭建php環境
phpStudy是一個PHP調試環境的程序集成包。
該程序包集成最新的Apache+Nginx+LightTPD+PHP+Mysql+phpMyAdmin+Zend Optimizer+Zend Loader,一次性安裝,無須配置即可使用,是非常方便、好用的PHP調試環境。該程序綠色小巧簡易迷你僅有32M,有專門的控制面板。總之學習PHP只需一個包。
對學習PHP的新手來說,WINDOWS下環境配置是一件很困難的事;對老手來說也是一件煩瑣的事。因此無論你是新手還是老手,該程序包都是一個不錯的選擇。
全面適合 Win2000/XP/2003/win7/win8/win2008 操作系統 ,支持Apache、IIS、Nginx和LightTPD。
完美支持win10,支持自定義php版本
㈡ php 浮點加減是不是會出現精度問題
前段時間同事在算個值的時候發現,算出來的值不對,於是來問我,之前的開發中也遇到過這個問題,已經記不清楚怎麼處理的了,貌似用round四捨五入來著
php浮點數的精度
浮點數的精度
浮點數的精度有限。盡管取決於系統,PHP 通常使用 IEEE 754 雙精度格式,則由於取整而導致的最大相對誤差為 1.11e-16。非基本數學運算可能會給出更大誤差,並且要考慮到進行復合運算時的誤差傳遞。
此外,以十進制能夠精確表示的有理數如 0.1 或 0.7,無論有多少尾數都不能被內部所使用的二進制精確表示,因此不能在不丟失一點點精度的情況下轉換為二進制的格式。這就會造成混亂的結果:例如,floor((0.1+0.7)*10) 通常會返回 7 而不是預期中的 8,因為該結果內部的表示其實是類似 7.9999999999999991118…。
所以永遠不要相信浮點數結果精確到了最後一位,也永遠不要比較兩個浮點數是否相等。如果確實需要更高的精度,應該使用任意精度數學函數或者 gmp 函數。
上已經講了解決方法是用任意精度數學函數或者 gmp 函數,具體用什麼函數還是看官方文檔
㈢ php 表單提交至資料庫後出錯求解
你老師這樣教學生的話,可以說是在誤人子弟!
剛學都那麼偷懶,巴不得一個網站就寫一個字母就搞定是吧?
你開始的問題, 截的那張圖來看, 好像是php沒有被解析!
然後, 看你開頭的是寫的php短標簽 <? 而不是長標簽<?php
那麼, 你確定你的php運行環境支持<?這種短標簽嗎???
接下來的問題, 錯誤提示你是sql語法有錯誤!
conn.php
<?php
//下面幾個變數,雙引號內沒有使用變數,那就不要用檔羨雙引號,改用單引號,有利於php程序運行效率,新手都要養成一好習慣
$hostname='localhost';//mysql默認埠是3306,除非你改動了mysql埠,否則沒必要畫蛇添足的加什麼埠號
$database='test';
$username='root';
$password='';
$conn=mysql_connect($hostname,$username,$password)ortrigger_error(mysql_error(),E_USER_ERROR);
mysql_select_db($database,$conn)ordie(mysql_error());
//$db=mysql_select_db($database,$conn);上面已經選擇資料庫了,沒必要這里再選擇一次,更沒必要賦值給變數$db,因為這個變數以後用不到了,何必弄在哪裡占個內存呢?
//下面的php結束標簽頁不要了,因為你之後沒有其他非php代碼,可以省略
<?php//這里用長標簽,因為長標簽只要是支持php就支持,但短標簽不一定,要配置php.ini才可以,雖然大部分伺服器都支持段標簽,但無非就多3個字母,沒必要冒險!
include'conn.php';//調用conn.php文件,用於連接到資料庫
//連續的php代碼,沒必要弄好幾個標簽來分開,可以接著寫
//下面獲取post數據,最好是加上引號,否則php會把title當做常量查找一次,不利於優化,這是大忌
$title=$_POST['title'];//這果申請一$title變數用於保存從add_news.php傳過來的新聞標題title值.
$content=$_POST['content'];//同上,保存新聞內容值.
$add_time=date('Y-m-d');//這句話把獲取到的系統當前時間賦給變數$add_time
$sql="INSERTINTO`news`(`title`,`content`,`add_time`)VALUES('{$title}','{$content}','{$add_time}')";//這里就可以用雙租配引號了,因為裡面用了變數,試php能解析變數
//盡量少用@這個錯誤抑止符,因為這樣開銷會很大很大
$result=mysql_query($sql,$conn)ordie(mysql_error());//如果添加成功,返回真給$result,否則為false.
echo$result?'添加新聞成功,<ahref="add_news.php">返回繼續</a>':'添加新聞失敗,<ahref="add_news.php">請返回弊蠢指</a>';
//上面是三元運算,效果等同於if(){}else{},但語法更簡潔清晰!
㈣ php中寫不進資料庫
1,看看鏈接資料庫的地址、用戶名跟密碼是否正確,並且要用引號引起來;
2,mysql_select_db(message,$link_mysql);message也用引號引起來
3,看一下資料庫編碼是什麼格式,最好加上如mysql_query("set names utf8");,要不然插入中文有可能出現亂碼
4,如果id為主鍵自增長!,那麼插入的時候就不用寫id值了,也就是$sql = "insert into liuyan(user,title,content,date) values ('張三','測試標題','測試內容',now())";
5,執行sql的時候最好不要執行兩次,因為這樣為有很多重復數據,如果想判斷插入是否成功,那麼你可以
$bool=mysql_query($sql);
if($bool){
echo "發布成功";
}else{
echo "發布失敗";
}
㈤ PHP怎麼調用其他類的方法
在Java的調用方法是import,而在PHP中沒有import這個函數,一般PHP中調用其他類是用到require(),具體PHP調用其他類的方法如下:
1、首先應該先有一個文件名為tool.php的文件,在文件中聲明一個類。
(5)張雙php擴展閱讀:
類是變數與作用於這些變數的函數的集合。使用下面的語法定義一個類:
<?php
class Cart { var $items; // 購物車中的物品
// 將 $num 個 $artnr 物品加入購物車
function add_item($artnr, $num) {
$this->items[$artnr] += $num;
} // 將 $num 個 $artnr 物品從購物車中取出
function remove_item($artnr, $num) {
if ($this->items[$artnr] > $num) {
$this->items[$artnr] -= $num; return true;
} elseif
($this->items[$artnr] == $num) {
unset($this->items[$artnr]); return true;
} else {
return false; }
}
} ?>
上面的例子定義了一個 Cart 類,這個類由購物車中的商品構成的數組和兩個用於從購物車中添加和刪除商品的函數組成。