書籤
分類
-
近期文章
近期迴響
彙整
- 2025 年 九月
- 2025 年 八月
- 2025 年 七月
- 2025 年 六月
- 2025 年 五月
- 2025 年 三月
- 2025 年 二月
- 2025 年 一月
- 2024 年 十二月
- 2024 年 十一月
- 2024 年 十月
- 2024 年 九月
- 2024 年 八月
- 2024 年 七月
- 2024 年 六月
- 2024 年 五月
- 2024 年 四月
- 2024 年 三月
- 2024 年 二月
- 2024 年 一月
- 2023 年 十二月
- 2023 年 十一月
- 2023 年 十月
- 2023 年 九月
- 2023 年 八月
- 2023 年 七月
- 2023 年 六月
- 2023 年 五月
- 2023 年 四月
- 2023 年 三月
- 2023 年 二月
- 2023 年 一月
- 2022 年 十二月
- 2022 年 十一月
- 2022 年 十月
- 2022 年 九月
- 2022 年 八月
- 2022 年 七月
- 2022 年 六月
- 2022 年 五月
- 2022 年 四月
- 2022 年 三月
- 2022 年 二月
- 2022 年 一月
- 2021 年 十二月
- 2021 年 十一月
- 2021 年 十月
- 2021 年 九月
- 2021 年 八月
- 2021 年 七月
- 2021 年 六月
- 2021 年 五月
- 2021 年 四月
- 2021 年 三月
- 2021 年 二月
- 2021 年 一月
- 2020 年 十二月
- 2020 年 十一月
- 2020 年 十月
- 2020 年 九月
- 2020 年 八月
- 2020 年 七月
- 2020 年 六月
- 2020 年 五月
- 2020 年 四月
- 2020 年 三月
- 2020 年 二月
- 2020 年 一月
- 2019 年 十二月
- 2019 年 十一月
- 2019 年 十月
- 2019 年 九月
- 2019 年 八月
- 2019 年 七月
- 2019 年 六月
- 2019 年 五月
- 2019 年 四月
- 2019 年 三月
- 2019 年 二月
- 2019 年 一月
- 2018 年 十二月
- 2018 年 十一月
- 2018 年 十月
- 2018 年 九月
- 2018 年 八月
其它
[php]如何從 PHP 中的陣列中刪除元素
參考網址:DelftStack
-
使用
unset()
函式從 PHP 陣列中刪除一個元素 此函式不會更改索引值。索引值與以前相同。 -
使用
array_splice()
函式從 PHP 中的陣列中刪除一個元素array_splice
函式將自動為鍵重新索引。 -
使用
array_diff()
函式從 PHP 中的陣列中刪除一個元素 此函式不會更改陣列元素的索引。
實作後發現array_diff()會將索引值做一些改變,卻也不是從0開始,可用shuffle()讓索引值重整。
[sublime]編輯svg tag 要領
參考網址:https://www.itread01.com/content/1549431727.html
ctrl+/ 註解
Ctrl+Shift+K(shhift+del) 刪除整行 下面的文件會上移
remove_tag: shift+ctrl+;刪除包裹的html標籤(phpstorm: ctrl + shift + del) 所在行留空
雙敗淘汰改成單敗淘汰
將最上面的svg 和最下面的 /svg 註解
找到中間有許多text的地方 留第一行並註解掉,以下全部刪除
其它文件中的text全刪
這樣的做法最上頭的那一個直線會不見(有需要再補囉!)
[sport]d3.js與SVG,同場加映「正接多邊形」、「對戰表製作」
參考網址:
一直以來,對戰表的產生總是無法順利完成。看到SVG檔的結構,突發奇想,為什麼要跟樹狀結構硬拼呢?
既然有人可以做出樹狀結構的SVG檔了,就直接拿它來用,只要把資料庫中的人名接上去,就可以完成對戰表了。
感謝ren1244寫出這麼好用的程式,並大方分享。
it鐵人賽 D3.js新手開發基本圖表
網頁直接編輯環境 https://jsfiddle.net/
文字跟隨曲線排列 [D3]用 D3.js 畫出 SVG 基本圖形 – 文字 text
HTML dir Attribute 與 CSS writing-mode writing-mode: tb 文字直排
Is it possible to import svg shapes in d3.js?
getBBox() https://www.zhangxinxu.com/github/demo-Snap.svg/demo/basic/Element.getBBox.php 返回元素的边界框描述
儲存檔案時,要把svg放在div中。
[wsl]讓遠端可以瀏覽本機wsl的網頁
參考網址:stackOverFlow
net.bat
Powershell -Command Start-Process powershell -ArgumentList '-File d:\0_as\wsl\net.ps1' -Verb runAs REM pause
net.ps1
$remoteport = bash.exe -c "ifconfig eth0 | grep 'inet '" $found = $remoteport -match '\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}'; if( $found ){ $remoteport = $matches[0]; } else{ echo "The Script Exited, the ip address of WSL 2 cannot be found"; exit; } #[Ports] #All the ports you want to forward separated by coma $ports=@(80); #[Static ip] #You can change the addr to your ip config to listen to a specific address #$addr='0.0.0.0'; $addr='192.168.1.11'; #$addr='192.168.2.14'; $ports_a = $ports -join ","; #Remove Firewall Exception Rules iex "Remove-NetFireWallRule -DisplayName 'WSL 2 Firewall Unlock' "; #adding Exception Rules for inbound and outbound Rules iex "New-NetFireWallRule -DisplayName 'WSL 2 Firewall Unlock' -Direction Outbound -LocalPort $ports_a -Action Allow -Protocol TCP"; iex "New-NetFireWallRule -DisplayName 'WSL 2 Firewall Unlock' -Direction Inbound -LocalPort $ports_a -Action Allow -Protocol TCP"; for( $i = 0; $i -lt $ports.length; $i++ ){ $port = $ports[$i]; iex "netsh interface portproxy delete v4tov4 listenport=$port listenaddress=$addr"; iex "netsh interface portproxy add v4tov4 listenport=$port listenaddress=$addr connectport=$port connectaddress=$remoteport"; } pause
[sport]s12編組方式(800公尺8個跑道塞12人)
s12編組方式(800公尺8個跑道塞12人) by sairwolf@gmail.com 110.12.19 人數<=12 1-8依45367821編排,9-12依成績快慢編排。 人數>12且<=24 13==>6+7 14==>7+7 15==>7+8 16==>8+8 17==>8+9 18==>8+10 19==>8+11 20==>8+12 21==>9+12 22==>10+12 23==>11+12 24==>12+12 人數>24 的部分依<=12人的編排方式即可 //S形編組 800公尺塞12人 //傳入$source原始一維陣列 function oos_organize_s12($source) { $group=(int)((count($source)+11)/12); //排好後code_update()再調組 //print_r($source); if(count($source)>24) { for($j=($group-1);$j>=2;$j--) { $point=count($source)-12; //$b_half //echo "$j<br>"; $ss[$j] = array_splice($source,$point); //print_r($ss[$j]); } } //print_r($source); $cs=count($source); for($i=0;$i<count($source);$i++) { if($cs>=13 and $cs<=16) { //用S形編組 if(($i/$group)%2==0) { $ss[$i%$group][(int)($i/$group)]=$source[$i]; //echo $i."==>[".($i%$group)."][".(int)($i/$group)."]".$ss[$i%$group][(int)($i/$group)]."<br>"; } else { $ss[($group-1)-($i%$group)][(int)($i/$group)]=$source[$i]; //echo $i."==>[".(($group-1)-($i%$group))."][".(int)($i/$group)."]".$ss[($group-1)-($i%$group)][(int)($i/$group)]."<br>"; } }else if($cs>=17 and $cs<=24) { if($i<8) //第0組先塞滿8人 $ss[0][$i]=$source[$i]; else if($i>=20) //20以後塞第0組 $ss[0][$i-12]=$source[$i]; else //其它的塞第1組 $ss[1][$i-8]=$source[$i]; }else { //用S12編組 $ss[(int)($i/12)][$i%12]=$source[$i]; //echo $i."==>[". (int)($i/12) ."][". $i%12 ."]".$ss[(int)($i/12)][$i%12]."<br>"; } } //print_r($ss); //971001修正為45367821 //跑道12345678==>01234567 //名次56123478==>45012367 //名次75312468==>64201357 for($i=0;$i<$group;$i++) { $ss_d[$i][0]=$ss[$i][7]; $ss_d[$i][1]=$ss[$i][6]; $ss_d[$i][2]=$ss[$i][2]; $ss_d[$i][3]=$ss[$i][0]; $ss_d[$i][4]=$ss[$i][1]; $ss_d[$i][5]=$ss[$i][3]; $ss_d[$i][6]=$ss[$i][4]; $ss_d[$i][7]=$ss[$i][5]; $ss_d[$i][8]=$ss[$i][8]; $ss_d[$i][9]=$ss[$i][9]; $ss_d[$i][10]=$ss[$i][10]; $ss_d[$i][11]=$ss[$i][11]; } return $ss_d; } //function oos_organize_s12
[sport]手動更換跑道加入拖曳功能
參考網址:https://github.com/vcxiaohan/jquery-plugins/tree/master/dragMove
可以用滑鼠拖曳選手,進行更換跑道的動作了。