文章

顯示從 2022 起發佈的文章

解決ThinkPHP升級5.1後輸出字 轉義 問題

  ThinkPHP 在輸出view時會自動轉html字符 在字串後加上|raw {$str| raw }

推薦不錯的短網址

有完整的英文版 https://urlcc.cc 有免費的API https://ssur.cc https://88nb.cc

Telegram機械人 接收跟發送訊息記錄

  https://core.telegram.org/ bots/api Telegram機械人  發送跟接收訊息 ========================== 步驟一 申請帳號並設定 1. 在Telegram客戶端搜尋欄輸入BotFather並打開聊 天介面 2.對話 輸入 /newbot 3.輸入機器人名稱 4.輸入機器人使用者名稱 5.取得TOKEN複製起來. 呼叫API都要用到 ========================== 步驟二 設定權限 1.去BotFather 對話 2.在group可以回應,要透過 /mybots -> 選擇 bot -> Bot Settings -> Group Privacy -> 按下 Turn Off 3.開啟 bot inline query 功能,要透過 /mybots -> 選擇 bot -> Bot Settings -> Inline Mode -> 按下 Turn on 4.要設定 bot 使用提示功能,要透過 /mybots -> 選擇 bot -> Bot Settings -> Inline Mode -> 按下 Edit inline placeholder,輸入使用提示即可 5.其他bot 簡介納耶也是在Bot Settings 裡面設置 *Channel跟Group都可以發言 ,好像要有管理者權限 ========================== 步驟三 取得聊天室或頻道ID 要去APP上看聊天室的id ========================== 步驟四  發送訊息 直接呼叫GET 要測試可以直接在瀏覽器上打 https://api.telegram.org/bot 步驟 一取得的toke/sendMessage?chat_id= 聊天室id&text=要發送的文字 php程式碼 define('BOT_TOKEN', 'XXXXX'); define('API_URL', ' https://api.telegram.org/bot' .BOT_TOKEN.'/' ); $sendto =API_URL.&qu

HTML臉書分享按鈕

  <a href="https://www.facebook.com/sharer.php?u=分享的網址&quote=分享的說明" target="_blank"> <img src="圖片" /> </a>

js返回上一頁並重新整理

   <button type="button" onClick="javascript:location. replace(this.href);event. returnValue=false;">Home</button> </div>

php判斷是否http或https開頭

  if($url && substr($url, 0, 7) !== "http://" && substr($url, 0, 8) !== "https://" && substr($url, 0, 2) !== "//" ){           return FALSE;     }

YOURLS設定時區

 預設時區是加0 要自己去user/config裡面加 define( 'YOURLS_HOURS_OFFSET', '+8' );

阿里雲國際版簡訊使用注意事項

 阿里雲國際版簡訊收不到的可能原因 電話國碼後如果遇到原本是09開頭 要保留0 留0不留0都回發送成功但留0的才會收得到 官方這點也沒有說明清楚不知道是不是每個國家會不一樣

visual studio 生成類別圖

圖片
 C++寫好程式之後可利用VS內建功能產生類別圖 檢視後會產生.cd檔案 可在工具列選擇類別圖表地方匯出成圖片

[Android]判斷檔案名稱以及檔案類型

 首先用途是什麼?我最近寫 雲端列印用到的 在android裡面Mime類型的用途就是告訴系統,他是怎樣的檔案可以給那些城市處理。如設置為text / plain表示可以處理名為.txt文件。 MimeTypeMap類 MimeTypeMap類是專門處理MIMETYPE的類。 獲得檔案的mimeType返回字串 File file = new File(pptPath); Uri url =Uri.fromFile(file); String  mimeType = MimeTypeMap.getSingleton().getMimeTypeFromExtension( MimeTypeMap.getFileExtensionFromUrl(url.toString())); 有試過裝不同APP應用程式後,會影響mimeType 得顯示。 另外獲得檔案名稱 file.getName()

发生 No package libmcrypt available

  发生 No package libmcrypt available 执行 yum install epel-release yum install libmcrypt libmcrypt-devel mcrypt mhash

php判斷瀏覽器語系

 $lang = substr($_SERVER['HTTP_ACCEPT_LANGUAGE'], 0, 4);    if (preg_match("/zh-c/i", $lang)) { }else if (preg_match("/zh/i", $lang)) { }else{

asset路徑問題

 路徑格式如下 file:///android_asset/mobileWeb/index.html 要注意的是asset下的資料夾不能有 "    _   " 字元,不然系統會無法讀取。

月份和禮拜日到禮拜六的英文與日文

 1月:January〔`d3ænjU,εrI〕===Jan 2月:February〔`fεbrU,εrI〕===Feb 3月:March 〔mart∫〕===Mar 4月:April〔`epr∂l〕===Apr 5月: May 〔me〕===May 6月:June〔d3un〕===Jun 7月: July〔d3u`laI〕=== Jul 8月: August〔`)∂gst〕===Aug 9月: September〔sεp`tεmb ∂v〕===Sep 10月: October〔ak`tob ∂v〕===Oct 11月:November〔no`vεmb ∂v〕===Nov 12月:December〔dI`sεmb ∂v〕 ===Dec 日文月份 何月 なんがつ 1月 いちがつ     正月(しょうがつ)/睦月(むつき) 2月 にがつ      如月(きさらぎ) 3月 さんがつ     弥生(やよい) 4月 しがつ      卯月(うづき) 5月 ごがつ      皐月(さつき) 6月 ろくがつ     水無月(みなづき) 7月 しちがつ     文月(ふみづき) 8月 はちがつ     葉月(はづき) 9月 くがつ      長月(ながつき) 10月 じゅうがつ   神無月(かんなづき) 11月 じゅういちがつ 霜月(しもつき) 12月 じゅうにがつ  師走(しわす) 日文月份 星期一 月曜日(月) Monday(Mon) 星期二 火曜日(火) Tuesday(Tue) 星期三 水曜日(水) Wednesday(Wed) 星期四 木曜日(木) Thursday(Thu) 星期五 金曜日(金) Friday(Fri) 星期六 土曜日(土) Saturday(Sat) 星期天 日曜日(日) sunday sun football

[iOS]取得當月有多少天

  - ( NSInteger )getNumberOfDaysInMonth {      NSCalendar  * calendar = [[ NSCalendar   alloc ]  initWithCalendarIdentifier : NSCalendarIdentifierGregorian ];      NSDate  * currentDate = [ NSDate   date ];      NSRange  range = [calendar  rangeOfUnit : NSCalendarUnitDay                                     inUnit :  NSCalendarUnitMonth                                      forDate :currentDate];      return  range. length ; }

下pod instal遇到的錯誤

  下指令 pod install 遇到錯誤 /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/2.3.0/rubygems.rb:241:in `bin_path': can't find gem cocoapods (>= 0.a) (Gem::GemNotFoundException) from /usr/local/bin/pod:22:in `<main>' 這邊的解決方式:重裝cocoapods 移除 sudo gem uninstall cocoapods 安裝 gem install cocoapods

黑蘋果無法使用iMessage

 我自己安裝黑蘋果的電腦型號是 筆電TP00072B ThinkPad 電腦用需虛擬機安裝完蘋果的系統之後 無法登入訊息使用 iMessage 上網查了一下相關資料需要另外破解,而且他有綁硬體看不太懂就沒試 去露天拍賣找有人說有辦法破要三千 同事去掏寶找也有在賣,不過他跟對方聊天後... 對方說現在沒辦法用模擬機來群發iMessage,應該是破解了蘋果也會抓然後鎖機
 引入參考System.Management 再使用using System.Management;   ManagementObjectSearcher query = new ManagementObjectSearcher("SELECT * FROM Win32_NetworkAdapterConfiguration");             ManagementObjectCollection queryMAC = query.Get();             foreach (ManagementObject mac in queryMAC)             {                 if (mac["IPEnabled"].ToString() == "True")                     Console.WriteLine(mac["MacAddress"].ToString());             }

打國際電話要加國際冠碼和國碼

 打國際電話要加國際冠碼和國碼 可以用加號➕來取代國際冠碼,但有些電話不支援➕就只能乖乖打國際冠碼. 重點 *打國際電話格式 國際冠碼+國碼+電話號碼 *在台灣手機如果是09開頭要去掉0 *國際冠碼可以用加號➕來取代 國碼可以從中華電信、維基百科、旅行社查詢,網路上有些資訊都沒有更新 private String[][] country = { { "自定由右輸入" , "自定由右輸入" , "" }, { "阿爾及利亞" , "ALGERIA" , "+213" }, { "阿根廷" , "ARGENTINA" , "+54" }, { "澳洲" , "AUSTRALIA" , "+61" }, { "奧地利" , "AUSTRIA" , "+43" }, { "比利時" , "BELGIUM" , "+32" }, { "巴西" , "BRAZIL" , "+55" }, { "加拿大" , "CANADA" , "+1" }, { "智利" , "CHILE" , "+56" }, { "中國大陸" , "CHINA" , "+86" }, { "哥倫比亞" , "COLOMBIA" , "+57" }, { "哥斯大黎加" , "COSTA RICA" , "+506&qu

[Android]格式化字串顯示到小數第一位

 double rtd=123.456; 小數第一位 String gg=String.format("%.1f", rtd)+" KG" 小數第二位 String.format("%.2", rtd)

PHP取得小數第二位

  $avar= round($avar,2);

php寶塔環境設置set_time_limit(0); 無效

  php執行太久會自己中斷 寶塔環境下只設定 set_time_limit(0); 會沒有效果 要防止執行過久自己中斷 還要去 1.nginx修改超時時間 2.php設置裡面有個超實限制,也要修改 才會有效果

做個紀錄。 js把HTML Table轉換成csv檔案下載

 參考這篇 https://www.geeksforgeeks.org/how-to-export-html-table-to-csv-using-javascript/ function tableToCSV() {               // Variable to store the final csv data             var csv_data = [];               // Get each row data             var rows = document.getElementsByTagName('tr');             for (var i = 0; i < rows.length; i++) {                   // Get each column data                 var cols = rows[i].querySelectorAll('td,th');                   // Stores each csv row data                 var csvrow = [];                 for (var j = 0; j < cols.length; j++) {                       // Get the text data of each cell                     // of a row and push it to csvrow                     csvrow.push(cols[j].innerHTML);                 }                   // Combine each column value with comma                 csv_data.push(csvrow.join(","));             }               // Combine each row data with new line character             csv_data =

轉 CSV 檔案的數字變為科學符號的問題

csv檔案用office打開電話或id變成科學符號處理方式  如123456789012 顯示 1.23457E+11 只要在字串結尾加上跳脫字元\t,顯示就會正常

PHP 處理字串要注意的事情

 單引號' ' 和雙引號 " " 不同 單引號 ' ' 是連跳脫字元都不處理,也就是 \n 會當成 \ 和 n 所以像處理文字換行定位點等都要用雙引號

mysql 條件是WHERE判斷數值為空/檢查欄位是否 NULL 或空白

 不能用 = null 有種設定下可以但不知道要怎樣用.大多都會無效 要用xxx  IS NULL 為空 SELECT * FROM table_name WHERE col_name IS NULL; 不為空 SELECT * FROM table_name WHERE col_name IS NOT NULL;

比扯鈴還扯

圖片
         幫人重灌電腦,升級主機板驅動時,ASUS主機版居然同時顯是兩個取消.我按其中一個取消居然給我更新驅動...中文公司自己國家語言的產品的文字還可以誤植.太扯拉!華碩就真的只是比較便宜,品質不敢恭維...

DNS設定的IP

在臺灣大都設中華或哭狗  HiNet DNS 168.95.1.1 或 168.95.192.1 GOOGLE的DNS網址 哭狗官方說明 https://developers.google.com/speed/public-dns/ 就是 8.8.8.8 和 8.8.4.4

[php]print和echo差別

 都可以輸出只是print會回傳0或1 //print也可輸出會回傳成功或失敗0 1 echo "<br>"; print "$name 年齡是 $age";

js 定時器setInterval

var timer = setInterval(function() { }, 6000); 毫秒计算

php二維陣列搜尋

  $key = array_search("ABC",array_column($rows,'type'));     echo "Key值為:".$key;

php陣列顛倒

  陣列顛倒     $rows = array_reverse($rows);

php取得陣列長度

 取得陣列長度  $rowscount=count($rows);

PHP個人筆記,陣列相關

* 陣列宣告      $rows = array(); *取得陣列長度      $rowscount=count($rows); *陣列顛倒      $rows = array_reverse($rows); *在二維陣列內搜尋特定得值,在哪個key      $key = array_search("ABC",array_column($rows,'type'));      echo "Key值為:".$key; *打印陣列資訊      print_r($rows);      或      var_dump($rows); *json轉陣列 $rows=json_decode($jsonstr,true);

javascript來做aes加密使用CryptoJS

 javascript來做aes加密,使用CryptoJS 套件下載位置 https://code.google.com/archive/p/crypto-js/ < script language = "JavaScript" src = "../aes/rollups/aes.js" >< /script> < script language = "JavaScript" src = "../aes/components/pad-nopadding-min.js" >< /script> < script language = "JavaScript" src = "../aes/components/mode-ecb-min.js" >< /script> < SCRIPT LANGUAGE = "JavaScript" > var iv01 = CryptoJS.enc.Hex.parse( '882525212882525212' ); //加密用的偏移 //加密 function aesEncrypt(data, key) { var encrypted = CryptoJS.AES.encrypt(data, key, { iv : iv01, mode : CryptoJS.mode.ECB, padding : CryptoJS.pad.Pkcs7 }); return encrypted.toString(); } //解密 function aesDecrypt(encrypted, key) { var decrypted = CryptoJS.AES.decrypt(encrypted, key, { iv : iv01, mode

[C#]AES

  說明 http://zh.wikipedia.org/zh-hant/%E8%B3%87%E6%96%99%E5%8A%A0%E5%AF%86%E6%A8%99%E6%BA%96 http://www.baike.com/wiki/AES%E5%8A%A0%E5%AF%86%E7%AE%97%E6%B3%95 AES程式碼  [WebMethod]  public String AESEncrypt(String plainText, String AESKey)  {      byte[] binputString = Encoding.Default.GetBytes(plainText);      RijndaelManaged aes = new RijndaelManaged();      aes.KeySize = 128;      aes.Key = System.Text.UTF8Encoding.UTF8.GetBytes(AESKey);     // aes.Key = convertHexToByte(AESKey);      aes.BlockSize = 128;      //  aes.IV = new byte[16];      ICryptoTransform encryptor = aes.CreateEncryptor();      MemoryStream memoryStream = new MemoryStream();      CryptoStream cryptoStream = new CryptoStream(memoryStream, encryptor, CryptoStreamMode.Write);      cryptoStream.Write(binputString, 0, binputString.Length);      cryptoStream.FlushFinalBlock();      cryptoStream.Close();      byte[] encryptBytes = memoryStream.ToArray();      string encryptedData = Convert.ToBase64String(encryptBytes);    

[Android]處理base64解碼後出現HTML字元&變成&amp

  不知道為什麼我從伺服器接收到的base64資料解碼後原本的&變成&amp; 查了一下網路&amp;是&的HTML表現方式 我這邊的處理方式是把base64解析後的字串做html格式轉換處理 如下 URL= Html. fromHtml ( URL).toString() ;

android BMP圖片合成

  public Bitmap doodle ( Bitmap bitmap0 , Bitmap bitmap1 ) { Matrix matrix = new Matrix (); matrix . postRotate ( 0 ); //旋轉角度 int width = bitmap0 . getWidth (); int height = bitmap0 . getHeight (); bitmap0 = Bitmap . createBitmap ( bitmap0 , 0 , 0 , width , height , matrix , true ); Bitmap newb = Bitmap . createBitmap ( bitmap0 . getWidth (), bitmap0 . getHeight (), Config . ARGB_8888 ); Bitmap newb = Bitmap . createBitmap ( src ); Canvas canvas = new Canvas ( newb ); canvas . drawBitmap ( bitmap0 , 0 , 0 , null ); canvas . drawBitmap ( bitmap1 , width - bitmap1 . getWidth (), height - bitmap1 . getHeight (), null ); //canvas.drawBitmap(watermark, 0, 0, null); canvas . save ( Canvas . ALL_SAVE_FLAG ); canvas . restore (); return newb ; }

iOS的UIIMAGE圖片合成

  - ( UIImage   *)addImage:( UIImage   *)image1 toImage:( UIImage   *)image2 {      UIGraphicsBeginImageContext (image1. size );     [image1 drawInRect: CGRectMake ( 0 ,  0 , image1. size . width , image1. size . height )];     [image2 drawInRect: CGRectMake ( 0 ,  0 , image2. size . width , image2. size . height )];      UIImage  *resultingImage =  UIGraphicsGetImageFromCurrentImageContext ();      UIGraphicsEndImageContext ();      return  resultingImage; }

[C#]GDI畫出文字與圖片合成PNG檔案

   //設定字型與字體大小 System.Drawing.Font drawFont = new System.Drawing.Font("標楷體", size); //設定粗體              System.Drawing.SolidBrush drawBrush = new System.Drawing.SolidBrush(System.Drawing.Color.Black); //設定為字串格式              System.Drawing.StringFormat drawFormat = new System.Drawing.StringFormat();   public void TandPtoOne(String Imgpath01, String Imgpath02, String text01, String text02, String Sdate, int x1, int x2, int x3, int y, int y1, int size)          {              System.Drawing.Font drawFont = new System.Drawing.Font("標楷體", size);              System.Drawing.SolidBrush drawBrush = new System.Drawing.SolidBrush(System.Drawing.Color.Black);              System.Drawing.StringFormat drawFormat = new System.Drawing.StringFormat();              System.Drawing.Font drawFont01 = new System.Drawing.Font("標楷體", 8);                           string sourcePath = Imgpath01;              Image souceImage = Image.FromFile(sourcePath);              Image zoomIma