php分享代碼
Ⅰ php將整數數字轉換為羅馬數字實例分享
方法一:自定義函數
我們可以自己手動編寫一個函數來實現此功能,這個函數可以將數字作為第一個參數,將其轉換為羅馬並返回。
註:大多數演算法只能在1-4999的范圍內工作,如果使用特大數,腳本將失敗。
實現代碼:
<?php
header("content-type:text/html;charset=utf-8");
//將數字轉換為羅馬表示形式
function
numberToRoman($num)
{
//
Be
sure
to
convert
the
given
parameter
into
an
integer
$n
=
intval($num);
$result
=
'';
//
Declare
a
lookup
array
that
we
will
use
to
traverse
the
number:
$lookup
=
array(
'M'
=>
1000,
'CM'
=>
900,
'D'
=>
500,
'CD'
=>
400,
'C'
=>
100,
'XC'
=>
90,
'L'
=>
50,
'XL'
=>
40,
'X'
=>
10,
'IX'
=>
9,
'V'
=>
5,
'IV'
=>
4,
'I'
=>
1
);
foreach
($lookup
as
$roman
=>
$value)
{
//
Look
for
number
of
matches
$matches
=
intval($n
/
$value);
//
Concatenate
characters
$result
.=
str_repeat($roman,
$matches);
//
Substract
that
from
the
number
$n
=
$n
%
$value;
}
return
$result;
}
echo
'整數數字轉換為羅馬數字:<br><br>';
//
VIII
echo
'數字8:'.numberToRoman(8).'<br>';
//
CXXIII
echo
'數字123:'.numberToRoman(123).'<br>';
//
MMCCCLV
echo
'數字2355:'.numberToRoman(2355).'<br>';
//
MMMMCMXCIX
echo
'數字4999:'.numberToRoman(4999).'<br>';
?>
輸出:
方法二:使用Romans庫
Romans庫是一個非常簡單的PHP羅馬數字型檔,允許您將整數轉換為其羅馬表示,反之亦然。
註:如果沒有該庫,請先需要安裝;安裝好Romans庫後,就能夠使用其命名空間並使用可幫助轉換數字的函數。
Romans庫包含一對簡單的過濾器,用於將具有羅馬數字的字元串轉換為表示輸入為十進制的int,將十進制int轉換為具有羅馬數字作為結果的字元串。
1、整數轉換為羅馬數字
要將整數轉換為羅馬表示,需要使用IntToRoman類,創建一個實例並從中調用filter方法。此方法將數字作為第一個參數,並返回帶有羅馬數字的字元串:
<?php
use
Romans\Filter\IntToRoman;
$filter
=
new
IntToRoman();
$result
=
$filter->filter(1999);
echo
$result;
?>
輸出:
MCMXCIX
2、羅馬數字轉換為整數
要將羅馬數字轉換為整數表示,需要使用RomanToInt類,創建一個實例並從中調用filter方法。此方法將使用羅馬數字的字元串作為第一個參數,並返回一個帶數值的整數:
<?php
use
Romans\Filter\RomanToInt;
$filter
=
new
RomanToInt();
$result
=
$filter->filter('MCMXCIX');
echo
$result;
?>
輸出:
1999
您可能感興趣的文章:PHP5中使用mysqli的prepare操作資料庫的介紹PHP中單例模式的使用場景與使用方法講解PHP自動生成縮略圖函數的源碼示例PHP添加文字水印或圖片水印的水印類完整源代碼與使用示例PHP實現對數字分隔加千分號的方法PHP生成指定范圍內的N個不重復的隨機數PHP中十六進制顏色與RGB顏色值互轉的方法Ubuntu16.04搭建php5.6Web伺服器環境PHP標准庫(PHP
SPL)詳解PHP後台備份MySQL資料庫的源碼實例
Ⅱ html thinkphp我想在自己的網頁加入分享到微信連接
據了解thinkPHP使用模板引擎 ThinkTemplate
你可以給你的模板文件的footer中在你相應的位置中嵌入分享代碼:
例如以下是第三方提供的插件
<!--JiaThisButtonBEGIN--><divid="ckepop">
<spanclass="jiathis_txt">分享到:</span>
<aclass="jiathis_button_weixin">微信</a>
<ahref="http://www.jiathis.com/share"class="jiathisjiathis_txtjiathis_separatorjticojtico_jiathis"target="_blank">更多</a>
<aclass="jiathis_counter_style"></a></div>
<scripttype="text/javascript"src="http://v3.jiathis.com/code/jia.js?uid=1"charset="utf-8"></script>
</div><!--JiaThisButtonEND-->
更新網頁查看效果
Ⅲ 如何用PHP實現分享功能
<html><head>
<title>分頁示例(php</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<?php
$pagesize=10; //設定每一頁顯示的記錄數
$conn=mysql_connect("localhost","root","jrq");
mysql_select_db("sj",$conn);
$rs = mysql_query( "select * from `dw_newsdata`",$conn); //這里有第二個可選參數,指定打開的連接
//-----------------------------------------------------------------------------------------------//
//分頁邏輯處理
//-----------------------------------------------------------------------------------------------
$tmpArr = mysql_fetch_array($rs);
$numAL = mysql_num_rows($rs); //取得記錄總數$rs
$pages=intval($numAL/$pagesize); //計算總頁數
if ($numAL % $pagesize) $pages++;
//設置預設頁碼
//↓判斷「當前頁碼」是否賦值過
if (isset($_GET['page']))else//否則,設置為第一頁
//↓計算記錄偏移量
$offset=$pagesize*($page - 1);
//↓讀取指定記錄數
$rs=mysql_query("select * from `dw_newsdata` limit $offset,$pagesize",$conn);//取得—當前頁—記錄集!
$curNum = mysql_num_rows($rs); //$curNum - 當前頁實際記錄數,for循環輸出用
?>
<table border="0" width="80%">
<tr>
<td width="50%" bgcolor="#E0E0E0">標題</td>
<td width="50%" bgcolor="#E0E0E0">發布時間</td>
</tr>
<?php
while ($tmpArr = mysql_fetch_array($rs)) //提取一行,並循環判斷
{
$i=0;
// for($a=0;$a<$ColNum;$a++) //==for結束==
?>
<tr>
<td width="50%"><?= $tmpArr[1]; //$tmpArr["news_title"] ; ?></td>
<td width="50%"><?php echo $tmpArr[2]; //$tmpArr["news_cont"]; ?></td>
</tr>
<?php
}//==while結束==
?>
</table>
<?php
//============================//
// 翻頁顯示 一
//============================//
echo "<p>"; // align=center
$first=1;
$prev=$page-1;
$next=$page+1;
$last=$pages;
if ($page > 1)
{
echo "<a href='?page=".$first."'>首頁</a> ";
echo "<a href='?page=".$prev."'>上一頁</a> ";
}
if ($page < $pages)
{
echo "<a href='?page=".$next."'>下一頁</a> ";
echo "<a href='?page=".$last."'>尾頁</a> ";
}
//============================//
// 翻頁顯示 二
//============================//
echo " | 共有".$pages."頁(".$page."/".$pages.")";
for ($i=1;$i< $page;$i++) // 1-先輸出當前頁之前的
if ($page > 0) echo "[".$page."]";; // 2-再輸出當前頁
for ($i=$page+1;$i<=$pages;$i++)// 3-接著輸出當前頁之後
echo "轉到第 <INPUT maxLength=3 size=3 value=".($page+1)." name=gotox> 頁 <INPUT hideFocus onclick=\"location.href='?page=gotox.value';\" type=button value=Go name=cmd_goto>";
echo "</p>";
?>
</body>
</html>
Ⅳ 微信分享到朋友圈中的按鈕點擊在php代碼和輸出頁面代碼怎麼寫
下面是代碼(相關參數請自行修改):
function WeiXinShareBtn() {
if (typeof WeixinJSBridge == "undefined") {
alert("xxxxxxxxxxxxxxxxxxx,通過微信分享文章 ");
} else {
WeixinJSBridge.invoke('shareTimeline', {
"title": "xxx",
"link": "http://www.36kr.com",
"desc": "xxxxxxxx",
"img_url": "assets/images/apple-touch-icon.png"
});
}
}
Ⅳ php網頁開發微信分享成功後的回調函數怎麼寫
1、簽名:
url: 需要根據不同的頁面動態獲取,url不能進行encodeURIComponent,否則驗簽會失敗 url不能包括微信添加的#後邊的部分,所以應該處理為:window.location.href.split('#')[0] 簽名用的url必須是調用JS介面頁面的完整URL。
nonceStr、timestamp:應該動態生成,而不能hardcode 簽名用的noncestr和timestamp必須與wx.config中的nonceStr和timestamp相同
為安全考慮,簽名必須在後台進行,其他調用js在前台進行。
2、ticket和accesstoken:
accesstoken:同調用微信其他介面的accesstoken,必須全局緩存,以免影響其他業務,即是說:微信所有業務應該用同一個accesstoken去調用微信介面,而不能自己刷新accesstoken。
ticket:同accesstoken一樣,必須全局緩存,方式很多,可以放到資料庫,或者放到緩存。目前ticket的有效時間為2小時,所以2小時內ticket未過期時,不能重復獲取,否則可能導致ticket獲取次數超過限額,導致sign失敗。
3、注意代碼執行順序
首先應該獲取簽名,簽名獲取後在調用wx.config方法,然後再執行wx.ready、wx.error方法。
4、其他
每個頁面載入完成後都應該重新從後台獲取簽名信息,避免簽名失敗
具體開發步驟詳見官方文檔
5、官方常見問題及處理方法:
調用config 介面的時候傳入參數 debug: true 可以開啟debug模式,頁面會alert出錯誤信息。
Ⅵ 有關於PHP中常見數據類型的匯總分享
PHP
數據類型
PHP
支持八種原始類型(type)。
四種標量類型:
string(字元串)
integer(整型)
float(浮點型,也作
double
)
boolean(布爾型)
兩種復合類型:
array(數組)
object(對象)
兩種特殊類型:
resource(資源)
NULL(空)
查看變數類型
通過
gettype()
函數可以方便的查看某個變數的類型:
復制代碼
代碼如下:
<?php$var_bool
=
TRUE;
//
a
boolean$var_str
=
"foo";
//
a
string$var_int
=
12;
//
an
integerecho
gettype($var_bool);
//
輸出
booleanecho
gettype($var_str);
//
輸出
stringecho
gettype($var_int);
//
輸出
integer?>
(PS:T不錯的PHP
Q扣峮:276167802,驗證:csl)
提示
由於歷史原因,如果是
float
類型數據,gettype()
函數返回的是
double,而不是
float
。
如果想查看某個表達式的值和類型,請使用用
var_mp()
函數。
判斷變數類型
如果想通過判斷變數類型來確定下一步邏輯動作,不要使用
gettype()
,而使用
is_type
系列函數:
復制代碼
代碼如下:
<?php$var_int
=
12;//
如果
$var_int
是
int
類型,這進行加法if
(is_int($var_int))
{
$var_int
=
$var_int+4;}echo
$var_int;
//
輸出
16?>
以上是本文關於PHP
數據類型的匯總,希望本文對廣大php開發者有所幫助,感謝您閱讀本文。
Ⅶ php生成不重復隨機數、數組的4種方法分享
下面寫幾種生成不重復隨機數的方法,直接上代碼吧
復制代碼
代碼如下:
<?php
define('RANDOM_MAX',
100);
define('COUNT',
10);
echo
'max
random
num:
'.RANDOM_MAX,
'
;result
count:'.COUNT,
'<br/>';
invoke_entry('rand1');
invoke_entry('rand2');
invoke_entry('rand3');
invoke_entry('rand4');
function
invoke_entry($func_name)
{
$time
=
new
time();
$time->time_start();
call_user_func($func_name);
echo
$func_name.'
time
spend:
',
$time->time_spend();
echo
'<br/>';
}
function
rand1()
{
$numbers
=
range
(1,
RANDOM_MAX);
shuffle($numbers); //隨機打亂數組
$result
=
array_slice($numbers,
1,
COUNT);
return
$result;
}
function
rand2()
{
$result
=
array();
while(count($result)<
COUNT)
{
$result[]
=
mt_rand(1,
RANDOM_MAX); //mt_rand()是比rand()更好更快的隨機函數
$result
=
array_unique($result);
//刪除數組中重復的元素
}
return
$result;
}
function
rand3()
{
$result
=
array();
while(count($result)
<
COUNT)
{
$_tmp
=
mt_rand(1,
RANDOM_MAX);
if(!in_array($_tmp,
$result))
{ //當數組中不存在相同的元素時,才允許插入
$result[]
=
$_tmp;
}
}
return
$result;
}
function
rand4()
{
$result
=
array();
while
(count($result)
<
COUNT)
{
$result[]
=
mt_rand(1,
RANDOM_MAX);
$result
=
array_flip(array_flip($result)); //array_flip將數組的key和value交換
}
return
$result;
}
class
time
{
private
$_start;
public
function
time_start()
{
$this->_start
=
$this->microtime_float();
}
public
function
time_spend()
{
return
$this->microtime_float()
-
$this->_start;
}
private
function
microtime_float()
{
list($usec,
$sec)
=
explode("
",
microtime());
return
((float)$usec
+
(float)$sec);
}
}
?>
Ⅷ php怎樣做一個帶有id的分享鏈接
思路很簡單:既然是唯一的URL地址,那麼你用注冊的URL,比如是index.php/register/index,然後你在後面加上用戶的唯一參數,用UID比較合適。就會變成index.php/register/index/id/001 這樣,然後你在注冊(register)控制器下的index方法中判斷一下isset($_GET[id]),如果有id,你就將對應這個id的用戶積分+1。
ps:tp有兩年沒用了,不太記得url的路由是什麼樣子,上面的url只是隨便舉個列子。然後就是id參數後面的001最好加密一下,防止在發的時候被別人簡單的修改,一定要用對稱加密,不然你自己解密不了。