使用php完成一個用戶注冊以及管理的demo(php實現(xiàn)單文件與多文件的上傳)
Aug 08, 2016 am 09:29 AM此篇文章主要講解如何封裝一個php的用于文件上傳下載的函數(shù),可以用于本demo中的頭像上傳功能,順便講解一下多文件上傳的方式。如果對于文件上傳特別熟悉可以跳過此節(jié)。
還是使用之前那個界面。
addUser.php:
<code><span><span>html</span>></span><span>head</span>><span>meta</span><span>charset</span>=<span>"utf-8"</span>><span>title</span>><span><span>title</span>></span><span><span>head</span>></span><span>body</span>><span>H3</span>>添加管理員<span><span>H3</span>></span><span>FORM</span><span>action</span>=<span>"doAdminAction.php?act=addUser"</span><span>method</span>=<span>"post"</span>><span>TABLE</span><span>width</span>=<span>"60%"</span><span>border</span>=<span>"1"</span><span>cellpadding</span>=<span>"5"</span><span>cellspacing</span>=<span>"0"</span><span>bgcolor</span>=<span>"#cccccc"</span>><span>tr</span>><span>TD</span><span>align</span>=<span>"right"</span>>用戶名稱<span><span>TD</span>></span><span>TD</span>><span>input</span><span>type</span>=<span>"text"</span><span>name</span>=<span>"username"</span><span>placeholder</span>=<span>"請輸入用戶名稱"</span>/><span><span>TD</span>></span><span><span>tr</span>></span><span>tr</span>><span>TD</span><span>align</span>=<span>"right"</span>>用戶密碼<span><span>TD</span>></span><span>TD</span>><span>input</span><span>type</span>=<span>"text"</span><span>name</span>=<span>"password"</span><span>placeholder</span>=<span>"請輸入用戶名稱"</span>/><span><span>TD</span>></span><span><span>tr</span>></span><span>tr</span>><span>TD</span><span>align</span>=<span>"right"</span>>用戶郵箱<span><span>TD</span>></span><span>TD</span>><span>input</span><span>type</span>=<span>"text"</span><span>name</span>=<span>"email"</span><span>placeholder</span>=<span>"請輸入用戶名稱"</span>/><span><span>TD</span>></span><span><span>tr</span>></span><span>tr</span>><span>td</span><span>align</span>=<span>"right"</span>>性別<span><span>td</span>></span><span>td</span>><span>input</span><span>type</span>=<span>"radio"</span><span>name</span>=<span>"sex"</span><span>value</span>=<span>"1"</span><span>checked</span>=<span>"checked"</span>/>男 <span>input</span><span>type</span>=<span>"radio"</span><span>name</span>=<span>"sex"</span><span>value</span>=<span>"2"</span> />女 <span>input</span><span>type</span>=<span>"radio"</span><span>name</span>=<span>"sex"</span><span>value</span>=<span>"3"</span> />保密 <span><span>td</span>></span><span><span>tr</span>></span><span>tr</span>><span>td</span><span>align</span>=<span>"right"</span>>頭像<span><span>td</span>></span><span>td</span>><span>input</span><span>type</span>=<span>"file"</span><span>name</span>=<span>"face"</span> /><span><span>td</span>></span><span><span>tr</span>></span><span>tr</span>><span>TD</span><span>colspan</span>=<span>"2"</span>><span>input</span><span>type</span>=<span>"submit"</span><span>value</span>=<span>"添加用戶"</span>/><span><span>TD</span>></span><span><span>tr</span>></span><span><span>FORM</span>></span><span><span>body</span>></span><span><span>html</span>></span></code>
這里是文件目錄:
在表單提交的doAdminAction.php中,只需要增 加move_uploaded_file($_FILES["face"]["tmp_name"], <br>
"upload/" . $_FILES["face"]["name"]);
這一行代碼,即可把客戶端上傳的文件放在服務(wù)器中的對應(yīng)的地方。但是這樣的代碼有一些問題
(1)如果在admin不存在upload的文件夾,文件上傳不上去。
(2)對于上傳的文件的類型沒有進(jìn)行檢驗,如果出現(xiàn)病毒文件會比較危險。
(3)如果上傳了與upload文件夾中的文件名稱相同的文件,原來的文件就會被替換掉。
(4)對于文件上傳可能會出現(xiàn)的一些錯誤沒有進(jìn)行處理,例如文件大小超過了2M,(php ini 文件中默認(rèn)規(guī)定的上傳限制大小為2M)
下面是解決方案:
(1)首先判斷upload的文件夾是否存在,如果不存在則建立
<code><span>$path</span>=<span>"upload/"</span>; <span>//</span>如果路徑不存在就建立的路徑上 <span>if</span>(!file_exists(<span>$path</span>)) { mkdir(<span>$path</span>,<span>0777</span>,<span>true</span>); } </code>
(2)使用strtolower(end(explode(“.”, $filename)));獲得文件的拓展名
然后判斷拓展名是否在所需要的文件類型中。
(3)使用md5(uniqid(microtime(true),true));得到一個唯一的字符串與之前得到的文件拓展名連接在一起,作為上傳文件的文件名。
(4)現(xiàn)在開始編寫doAdminAction的代碼,第四個問題將在代碼中講解。
<code><span><span><?php </span><span>require_once</span><span>'../include.php'</span>; <span>//print_r($_FILES["face"]);</span><span>$path</span>=<span>"upload/"</span>; <span>//如果路徑不存在就建立的路徑上</span><span>if</span>(!file_exists(<span>$path</span>)) { mkdir(<span>$path</span>,<span>0777</span>,<span>true</span>); } <span>//允許的類型</span><span>$allowExt</span>=<span>array</span>(<span>"gif"</span>,<span>"jpeg"</span>,<span>"png"</span>,<span>"jpg"</span>,<span>"wbmp"</span>); <span>$filename</span>=<span>$_FILES</span>[<span>"face"</span>][<span>"name"</span>]; <span>$ext</span>=getExt(<span>$filename</span>); <span>if</span>(!in_array(<span>$ext</span>,<span>$allowExt</span>)){ <span>exit</span>(<span>"非法文件類型"</span>); } <span>//得到了唯一的文件名的文件</span><span>$filename</span>=getUniName().<span>"."</span>.<span>$ext</span>; <span>if</span>(move_uploaded_file(<span>$_FILES</span>[<span>"face"</span>][<span>"tmp_name"</span>], <span>$path</span>.<span>$filename</span>)) { <span>echo</span><span>"文件上傳成功"</span>; } <span>else</span> { <span>switch</span>(<span>$_FILES</span>[<span>"face"</span>][<span>'error'</span>]){ <span>case</span><span>1</span>: <span>$mes</span>=<span>"超過了配置文件上傳文件的大小"</span>;<span>//UPLOAD_ERR_INI_SIZE</span><span>break</span>; <span>case</span><span>2</span>: <span>$mes</span>=<span>"超過了表單設(shè)置上傳文件的大小"</span>; <span>//UPLOAD_ERR_FORM_SIZE</span><span>break</span>; <span>case</span><span>3</span>: <span>$mes</span>=<span>"文件部分被上傳"</span>;<span>//UPLOAD_ERR_PARTIAL</span><span>break</span>; <span>case</span><span>4</span>: <span>$mes</span>=<span>"沒有文件被上傳"</span>;<span>//UPLOAD_ERR_NO_FILE</span><span>break</span>; <span>case</span><span>6</span>: <span>$mes</span>=<span>"沒有找到臨時目錄"</span>;<span>//UPLOAD_ERR_NO_TMP_DIR</span><span>break</span>; <span>case</span><span>7</span>: <span>$mes</span>=<span>"文件不可寫"</span>;<span>//UPLOAD_ERR_CANT_WRITE;</span><span>break</span>; <span>case</span><span>8</span>: <span>$mes</span>=<span>"由于PHP的擴(kuò)展程序中斷了文件上傳"</span>;<span>//UPLOAD_ERR_EXTENSION</span><span>break</span>; } <span>echo</span><span>$mes</span>; } <span>?></span></span></span></code>
如果發(fā)生了出現(xiàn)的錯誤,則這些錯誤會被打印出來。至此單文件上傳的內(nèi)容講解完畢,現(xiàn)在將上述的代碼封裝為函數(shù)。
<code><span><?php </span><span><span>function</span><span>uploadFile</span><span>(<span>$path</span>=<span>"upload/"</span>,<span>$allowExt</span>=array<span>(<span>"gif"</span>,<span>"jpeg"</span>,<span>"png"</span>,<span>"jpg"</span>,<span>"wbmp"</span>)</span>,<span>$imgFlag</span>=true)</span> {</span><span>//如果路徑不存在就建立的路徑上</span><span>if</span>(!file_exists(<span>$path</span>)) { mkdir(<span>$path</span>,<span>0777</span>,<span>true</span>); } <span>//允許的類型</span><span>$filename</span>=<span>$_FILES</span>[<span>"face"</span>][<span>"name"</span>]; <span>$ext</span>=getExt(<span>$filename</span>); <span>if</span>(!in_array(<span>$ext</span>,<span>$allowExt</span>)){ <span>exit</span>(<span>"非法文件類型"</span>); } <span>if</span>(<span>$imgFlag</span>){ <span>//如何驗證圖片是否是一個真正的圖片類型</span><span>//getimagesize($filename):驗證文件是否是圖片類型 正確返回數(shù)組錯誤返回false</span><span>$info</span>=getimagesize(<span>$tmp_name</span>); <span>//var_dump($info);exit;</span><span>if</span>(!<span>$info</span>){ <span>exit</span>(<span>"不是真正的圖片類型"</span>); } } <span>//得到了唯一的文件名的文件</span><span>$filename</span>=getUniName().<span>"."</span>.<span>$ext</span>; <span>if</span>(move_uploaded_file(<span>$_FILES</span>[<span>"face"</span>][<span>"tmp_name"</span>], <span>$path</span>.<span>$filename</span>)) { <span>echo</span><span>"文件上傳成功"</span>; } <span>else</span> { <span>switch</span>(<span>$_FILES</span>[<span>"face"</span>][<span>'error'</span>]){ <span>case</span><span>1</span>: <span>$mes</span>=<span>"超過了配置文件上傳文件的大小"</span>;<span>//UPLOAD_ERR_INI_SIZE</span><span>break</span>; <span>case</span><span>2</span>: <span>$mes</span>=<span>"超過了表單設(shè)置上傳文件的大小"</span>; <span>//UPLOAD_ERR_FORM_SIZE</span><span>break</span>; <span>case</span><span>3</span>: <span>$mes</span>=<span>"文件部分被上傳"</span>;<span>//UPLOAD_ERR_PARTIAL</span><span>break</span>; <span>case</span><span>4</span>: <span>$mes</span>=<span>"沒有文件被上傳"</span>;<span>//UPLOAD_ERR_NO_FILE</span><span>break</span>; <span>case</span><span>6</span>: <span>$mes</span>=<span>"沒有找到臨時目錄"</span>;<span>//UPLOAD_ERR_NO_TMP_DIR</span><span>break</span>; <span>case</span><span>7</span>: <span>$mes</span>=<span>"文件不可寫"</span>;<span>//UPLOAD_ERR_CANT_WRITE;</span><span>break</span>; <span>case</span><span>8</span>: <span>$mes</span>=<span>"由于PHP的擴(kuò)展程序中斷了文件上傳"</span>;<span>//UPLOAD_ERR_EXTENSION</span><span>break</span>; } <span>echo</span><span>$mes</span>; } }</span></code>
多文件上傳分為兩種情況
(1)多個單文件上傳
<code><span><span>html</span>></span><span>head</span>><span>meta</span><span>charset</span>=<span>"utf-8"</span>><span>title</span>><span><span>title</span>></span><span><span>head</span>></span><span>body</span>><span><!-- 表單中enctype="multipart/form-data"的意思,是設(shè)置表單的MIME編碼。默認(rèn)情況,這個編碼格式是application/x-www-form-urlencoded,不能用于文件上傳;只有使用了multipart/form-data,才能完整的傳遞文件數(shù)據(jù),進(jìn)行下面的操作. --></span><span>FORM</span><span>action</span>=<span>"doAction2.php"</span><span>method</span>=<span>"post"</span><span>enctype</span>=<span>"multipart/form-data"</span>><span>INPUT</span><span>type</span>=<span>"hidden"</span><span>name</span>=<span>"MAX_FILE_SIZE"</span><span>value</span>=<span>"1048576"</span>/> 請選擇上傳文件:<span>INPUT</span><span>type</span>=<span>"file"</span><span>name</span>=<span>"myFile1"</span>/><span>br</span>/> 請選擇上傳文件:<span>INPUT</span><span>type</span>=<span>"file"</span><span>name</span>=<span>"myFile2"</span>/><span>br</span>/> 請選擇上傳文件:<span>INPUT</span><span>type</span>=<span>"file"</span><span>name</span>=<span>"myFile3"</span>/><span>br</span>/><span>input</span><span>type</span>=<span>"submit"</span><span>value</span>=<span>"上傳"</span>/><span><span>FORM</span>></span><span><span>body</span>></span><span><span>html</span>></span></code>
這種形式相當(dāng)于上傳了多個單文件,在doAction2.php中print_r($_FILES);得到
<code><span>Array</span> ( [myFile1] => <span>Array</span> ( [name] => touxiang.jpg [type] => image/jpeg [tmp_name] => D:\xampp\tmp\php79E3.tmp [error] => <span>0</span> [size] => <span>28747</span> ) [myFile2] => <span>Array</span> ( [name] => 文章.png [type] => image/png [tmp_name] => D:\xampp\tmp\php7A03.tmp [error] => <span>0</span> [size] => <span>11655</span> ) [myFile3] => <span>Array</span> ( [name] => 增加.png [type] => image/png [tmp_name] => D:\xampp\tmp\php7A04.tmp [error] => <span>0</span> [size] => <span>7439</span> ) )</code>
(2)多文件上傳
<code><span><span>html</span>></span><span>head</span>><span>meta</span><span>charset</span>=<span>"utf-8"</span>><span>title</span>><span><span>title</span>></span><span><span>head</span>></span><span>body</span>><span><!-- 表單中enctype="multipart/form-data"的意思,是設(shè)置表單的MIME編碼。默認(rèn)情況,這個編碼格式是application/x-www-form-urlencoded,不能用于文件上傳;只有使用了multipart/form-data,才能完整的傳遞文件數(shù)據(jù),進(jìn)行下面的操作. --></span><span>FORM</span><span>action</span>=<span>"doAction2.php"</span><span>method</span>=<span>"post"</span><span>enctype</span>=<span>"multipart/form-data"</span>><span>INPUT</span><span>type</span>=<span>"hidden"</span><span>name</span>=<span>"MAX_FILE_SIZE"</span><span>value</span>=<span>"1048576"</span>/> 請選擇上傳文件:<span>INPUT</span><span>type</span>=<span>"file"</span><span>name</span>=<span>"myFile[]"</span>/><span>br</span>/> 請選擇上傳文件:<span>INPUT</span><span>type</span>=<span>"file"</span><span>name</span>=<span>"myFile[]"</span>/><span>br</span>/> 請選擇上傳文件:<span>INPUT</span><span>type</span>=<span>"file"</span><span>name</span>=<span>"myFile[]"</span>/><span>br</span>/><span>input</span><span>type</span>=<span>"submit"</span><span>value</span>=<span>"上傳"</span>/><span><span>FORM</span>></span><span><span>body</span>></span><span><span>html</span>></span></code>
同樣print_r($_files)一下
<code><span>Array</span> ( [myFile] => <span>Array</span> ( [name] => <span>Array</span> ( [<span>0</span>] => touxiang.jpg [<span>1</span>] => 文章.png [<span>2</span>] => 增加.png ) [type] => <span>Array</span> ( [<span>0</span>] => image/jpeg [<span>1</span>] => image/png [<span>2</span>] => image/png ) [tmp_name] => <span>Array</span> ( [<span>0</span>] => D:\xampp\tmp\php1EC.tmp [<span>1</span>] => D:\xampp\tmp\php1ED.tmp [<span>2</span>] => D:\xampp\tmp\php1EE.tmp ) [error] => <span>Array</span> ( [<span>0</span>] => <span>0</span> [<span>1</span>] => <span>0</span> [<span>2</span>] => <span>0</span> ) [size] => <span>Array</span> ( [<span>0</span>] => <span>28747</span> [<span>1</span>] => <span>11655</span> [<span>2</span>] => <span>7439</span> ) ) ) </code>
發(fā)現(xiàn)兩種方式得到的數(shù)組有很多的不同。
對于第一種的情況(相當(dāng)于一個文件數(shù)組)我們可以
<code><span>foreach</span> (<span>$_FILES</span><span>as</span><span>$var</span>) { <span>//對于每一個文件進(jìn)行了文件上傳操作</span><span>$info</span>=uploadFile(<span>$var</span>); <span>echo</span><span>$info</span>; }</code>
對于第二種情況我們可以將所示的三維數(shù)組轉(zhuǎn)換為第一種情況所示的二維數(shù)組即可。
<code>foreach(<span>$_FILES</span>[myFile][name] as <span>$key</span>=><span>$var</span> ) { <span>$files</span>[<span>$key</span>][name]=<span>$_FILES</span>[myFile][name][<span>$key</span>]; <span>$files</span>[<span>$key</span>][type]=<span>$_FILES</span>[myFile][type][<span>$key</span>]; <span>$files</span>[<span>$key</span>][tmp_name]=<span>$_FILES</span>[myFile][tmp_name][<span>$key</span>]; <span>$files</span>[<span>$key</span>][<span>error</span>]=<span>$_FILES</span>[myFile][<span>error</span>][<span>$key</span>]; <span>$files</span>[<span>$key</span>][<span>size</span>]=<span>$_FILES</span>[myFile][<span>size</span>][<span>$key</span>]; } print_r(<span>$files</span>);</code>
結(jié)果
<code><span>Array</span> ( [<span>0</span>] => <span>Array</span> ( [name] => touxiang.jpg [type] => image/jpeg [tmp_name] => D:\xampp\tmp\php3227.tmp [error] => <span>0</span> [size] => <span>28747</span> ) [<span>1</span>] => <span>Array</span> ( [name] => 文章.png [type] => image/png [tmp_name] => D:\xampp\tmp\php3228.tmp [error] => <span>0</span> [size] => <span>11655</span> ) [<span>2</span>] => <span>Array</span> ( [name] => 增加.png [type] => image/png [tmp_name] => D:\xampp\tmp\php3229.tmp [error] => <span>0</span> [size] => <span>7439</span> ) )</code>
成功了,現(xiàn)在我們開始封裝一個文件上傳函數(shù),這個函數(shù)呢既可以處理單文件上傳又可以處理多文件上傳。然后我們只需要編寫數(shù)組處理的這部分,然后調(diào)用upload()函數(shù)即可。
<code><span><?php </span><span>require_once</span><span>"../include.php"</span>; <span>//用于轉(zhuǎn)換數(shù)組</span><span><span>function</span><span>buildInfo</span><span>()</span> {</span><span>foreach</span>(<span>$_FILES</span><span>as</span><span>$file</span>) { <span>$i</span>=<span>0</span>; <span>if</span>(is_string(<span>$file</span>[<span>'name'</span>])) { <span>$files</span>[<span>$i</span>]=<span>$file</span>; <span>$i</span>++; } <span>else</span> { <span>foreach</span>(<span>$file</span>[name] <span>as</span><span>$key</span>=><span>$var</span>) { <span>$files</span>[<span>$key</span>][name]=<span>$file</span>[name][<span>$key</span>]; <span>$files</span>[<span>$key</span>][type]=<span>$file</span>[type][<span>$key</span>]; <span>$files</span>[<span>$key</span>][tmp_name]=<span>$file</span>[tmp_name][<span>$key</span>]; <span>$files</span>[<span>$key</span>][error]=<span>$file</span>[error][<span>$key</span>]; <span>$files</span>[<span>$key</span>][size]=<span>$file</span>[size][<span>$key</span>]; } } } <span>return</span><span>$files</span>; } <span>//用于上傳</span><span><span>function</span><span>uploadFile</span><span>(<span>$path</span>=<span>"upload/"</span>,<span>$allowExt</span>=array<span>(<span>"gif"</span>,<span>"jpeg"</span>,<span>"png"</span>,<span>"jpg"</span>,<span>"wbmp"</span>)</span>)</span> {</span><span>//如果路徑不存在就建立的路徑上</span><span>if</span>(!file_exists(<span>$path</span>)) { mkdir(<span>$path</span>,<span>0777</span>,<span>true</span>); } <span>$files</span>=buildInfo(); <span>foreach</span>(<span>$files</span><span>as</span><span>$file</span>) { <span>//允許的類型</span><span>$filename</span>=<span>$file</span>[<span>"name"</span>]; <span>$ext</span>=getExt(<span>$filename</span>); <span>if</span>(!in_array(<span>$ext</span>,<span>$allowExt</span>)){ <span>exit</span>(<span>"非法文件類型"</span>); } <span>//校驗是否是一個真正的圖片類型</span><span>if</span>(<span>$imgFlag</span>){ <span>if</span>(!getimagesize(<span>$file</span>[<span>'tmp_name'</span>])){ <span>exit</span>(<span>"不是真正的圖片類型"</span>); } } <span>//得到了唯一的文件名的文件</span><span>$filename</span>=getUniName().<span>"."</span>.<span>$ext</span>; <span>if</span>(move_uploaded_file(<span>$file</span>[<span>"tmp_name"</span>], <span>$path</span>.<span>$filename</span>)) { <span>echo</span><span>"文件上傳成功"</span>; } <span>else</span> { <span>switch</span>(<span>$file</span>[<span>'error'</span>]){ <span>case</span><span>1</span>: <span>$mes</span>=<span>"超過了配置文件上傳文件的大小"</span>;<span>//UPLOAD_ERR_INI_SIZE</span><span>break</span>; <span>case</span><span>2</span>: <span>$mes</span>=<span>"超過了表單設(shè)置上傳文件的大小"</span>; <span>//UPLOAD_ERR_FORM_SIZE</span><span>break</span>; <span>case</span><span>3</span>: <span>$mes</span>=<span>"文件部分被上傳"</span>;<span>//UPLOAD_ERR_PARTIAL</span><span>break</span>; <span>case</span><span>4</span>: <span>$mes</span>=<span>"沒有文件被上傳"</span>;<span>//UPLOAD_ERR_NO_FILE</span><span>break</span>; <span>case</span><span>6</span>: <span>$mes</span>=<span>"沒有找到臨時目錄"</span>;<span>//UPLOAD_ERR_NO_TMP_DIR</span><span>break</span>; <span>case</span><span>7</span>: <span>$mes</span>=<span>"文件不可寫"</span>;<span>//UPLOAD_ERR_CANT_WRITE;</span><span>break</span>; <span>case</span><span>8</span>: <span>$mes</span>=<span>"由于PHP的擴(kuò)展程序中斷了文件上傳"</span>;<span>//UPLOAD_ERR_EXTENSION</span><span>break</span>; } <span>echo</span><span>$mes</span>; } } }</span></code>
這段代碼中還增加了對于上傳圖片是否為圖片格式的檢驗,以及對于圖片大小的檢驗,因為有些病毒文件會偽裝為圖片文件。
以上就介紹了使用php完成一個用戶注冊以及管理的demo(php實現(xiàn)單文件與多文件的上傳),包括了方面的內(nèi)容,希望對PHP教程有興趣的朋友有所幫助。

熱AI工具

Undress AI Tool
免費(fèi)脫衣服圖片

Undresser.AI Undress
人工智能驅(qū)動的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover
用于從照片中去除衣服的在線人工智能工具。

Clothoff.io
AI脫衣機(jī)

Video Face Swap
使用我們完全免費(fèi)的人工智能換臉工具輕松在任何視頻中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費(fèi)的代碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
功能強(qiáng)大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6
視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版
神級代碼編輯軟件(SublimeText3)

許多用戶在選擇智能手表的時候都會選擇的華為的品牌,其中華為GT3pro和GT4都是非常熱門的選擇,不少用戶都很好奇華為GT3pro和GT4有什么區(qū)別,下面就就給大家介紹一下二者。華為GT3pro和GT4有什么區(qū)別一、外觀GT4:46mm和41mm,材質(zhì)是玻璃表鏡+不銹鋼機(jī)身+高分纖維后殼。GT3pro:46.6mm和42.9mm,材質(zhì)是藍(lán)寶石玻璃表鏡+鈦金屬機(jī)身/陶瓷機(jī)身+陶瓷后殼二、健康GT4:采用最新的華為Truseen5.5+算法,結(jié)果會更加的精準(zhǔn)。GT3pro:多了ECG心電圖和血管及安

為什么截圖工具在Windows11上不起作用了解問題的根本原因有助于找到正確的解決方案。以下是截圖工具可能無法正常工作的主要原因:對焦助手已打開:這可以防止截圖工具打開。應(yīng)用程序損壞:如果截圖工具在啟動時崩潰,則可能已損壞。過時的圖形驅(qū)動程序:不兼容的驅(qū)動程序可能會干擾截圖工具。來自其他應(yīng)用程序的干擾:其他正在運(yùn)行的應(yīng)用程序可能與截圖工具沖突。證書已過期:升級過程中的錯誤可能會導(dǎo)致此issu簡單的解決方案這些適合大多數(shù)用戶,不需要任何特殊的技術(shù)知識。1.更新窗口和Microsoft應(yīng)用商店應(yīng)用程

第1部分:初始故障排除步驟檢查蘋果的系統(tǒng)狀態(tài):在深入研究復(fù)雜的解決方案之前,讓我們從基礎(chǔ)知識開始。問題可能不在于您的設(shè)備;蘋果的服務(wù)器可能會關(guān)閉。訪問Apple的系統(tǒng)狀態(tài)頁面,查看AppStore是否正常工作。如果有問題,您所能做的就是等待Apple修復(fù)它。檢查您的互聯(lián)網(wǎng)連接:確保您擁有穩(wěn)定的互聯(lián)網(wǎng)連接,因為“無法連接到AppStore”問題有時可歸因于連接不良。嘗試在Wi-Fi和移動數(shù)據(jù)之間切換或重置網(wǎng)絡(luò)設(shè)置(“常規(guī)”>“重置”>“重置網(wǎng)絡(luò)設(shè)置”>設(shè)置)。更新您的iOS版本:

在Java編程語言中,經(jīng)常需要進(jìn)行文件的讀取、寫入、復(fù)制、刪除等操作。Java提供了一組Files類的函數(shù)來進(jìn)行文件操作。本文將介紹如何使用Java中的Files函數(shù)進(jìn)行文件操作。導(dǎo)入所需的包在進(jìn)行文件操作之前,首先要導(dǎo)入Java的io包和nio包:importjava.io.File;importjava.io.IOException;import

php提交表單通過后,彈出的對話框怎樣在當(dāng)前頁彈出php提交表單通過后,彈出的對話框怎樣在當(dāng)前頁彈出而不是在空白頁彈出?想實現(xiàn)這樣的效果:而不是空白頁彈出:------解決方案--------------------如果你的驗證用PHP在后端,那么就用Ajax;僅供參考:HTML code

watch4pro和gt各自具有不用的特點和適用場景,如果注重功能的全面性、高性能和時尚外觀,同時愿意承擔(dān)較高的價格,那么Watch 4 Pro可能更適合。如果對功能要求不高,更注重電池續(xù)航和價格的合理性,那么GT系列可能更適合。最終的選擇應(yīng)根據(jù)個人需求、預(yù)算和喜好來決定,建議在購買前仔細(xì)考慮自己的需求,并參考各種產(chǎn)品的評測和比較,以做出更明智的選擇。

如何使用iPadOS17.4優(yōu)化iPad電池壽命延長電池續(xù)航時間是移動設(shè)備體驗的關(guān)鍵,iPad是一個很好的例子。如果您覺得iPad電池消耗速度過快,不用擔(dān)心,在iPadOS17.4中有許多技巧和調(diào)整可以顯著延長設(shè)備的運(yùn)行時間。本深入指南的目標(biāo)不僅僅是提供信息,而是改變您使用iPad的方式,增強(qiáng)您的整體電池管理,并確保您可以在無需充電的情況下更長時間地依賴您的設(shè)備。通過采用此處概述的做法,您朝著更高效、更謹(jǐn)慎地使用技術(shù)邁出了一步,這些技術(shù)是根據(jù)您的個人需求和使用模式量身定制的。識別主要的能量消耗者
