{"id":658,"date":"2025-06-11T12:13:14","date_gmt":"2025-06-11T04:13:14","guid":{"rendered":"https:\/\/www.zhaozhao123.cn\/php\/php-application-manual\/xtywj\/658.html"},"modified":"2025-06-11T12:13:14","modified_gmt":"2025-06-11T04:13:14","slug":"php%ef%bc%9a%e5%a6%82%e4%bd%95%e6%a3%80%e6%9f%a5%e6%96%87%e4%bb%b6%e6%98%af%e5%90%a6%e5%9c%a8%e4%bd%bf%e7%94%a8%e4%b8%ad","status":"publish","type":"my1js","link":"https:\/\/www.zhaozhao123.cn\/php\/my1js\/658.html","title":{"rendered":"PHP\uff1a\u5982\u4f55\u68c0\u67e5\u6587\u4ef6\u662f\u5426\u5728\u4f7f\u7528\u4e2d"},"content":{"rendered":"<div class=\"wp-block-columns p-0 border is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-columns px-4 py-3 border-bottom has-background is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\" style=\"background:linear-gradient(243deg,rgb(238,238,238) 0%,rgba(58,166,242,0.15) 100%)\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\r\n<figure class=\"wp-block-image size-thumbnail is-resized is-style-rounded is-style-rounded--1\"><img decoding=\"async\" src=\"https:\/\/www.zhaozhao123.cn\/myitems\/images\/sites16\/2025\/06\/dyA-1-400x300.jpg\" alt=\"Bug&#32534;&#35793;&#29422;\" class=\"wp-image-1842\" style=\"object-fit:cover;width:30px;height:30px\"><\/figure>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading my-0\" style=\"font-size:clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.175), 1rem);\">Bug&#32534;&#35793;&#29422;<\/h2>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n\r\n\r\n\r\n<div class=\"wp-block-columns px-xl-5 px-4 py-xl-4 py-3 is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<p>&#22312; PHP &#20013;&#65292;&#20320;&#21487;&#20197;&#20351;&#29992; <code>fopen<\/code> &#20989;&#25968;&#26469;&#23581;&#35797;&#25171;&#24320;&#25991;&#20214;&#24182;&#26816;&#26597;&#23427;&#26159;&#21542;&#22788;&#20110;&#20351;&#29992;&#29366;&#24577;&#12290;&#20197;&#19979;&#26159;&#19968;&#20010;&#31034;&#20363;&#20195;&#30721;&#65292;&#23637;&#31034;&#20102;&#22914;&#20309;&#23454;&#29616;&#36825;&#19968;&#28857;&#65306;<\/p>\n<pre><code class=\"language-php\">&lt;?php\n\n$file = 'example.txt';\n\n\/\/ &#23581;&#35797;&#20197;&#21482;&#35835;&#27169;&#24335;&#25171;&#24320;&#25991;&#20214;\n$handle = fopen($file, 'r');\n\nif ($handle) {\n    \/\/ &#25991;&#20214;&#25104;&#21151;&#25171;&#24320;&#65292;&#21487;&#20197;&#36827;&#34892;&#20854;&#20182;&#25805;&#20316;\n    echo \"&#25991;&#20214;&#24050;&#25104;&#21151;&#25171;&#24320;&#12290;n\";\n\n    \/\/ &#20851;&#38381;&#25991;&#20214;\n    fclose($handle);\n} else {\n    \/\/ &#25991;&#20214;&#26080;&#27861;&#25171;&#24320;&#65292;&#21487;&#33021;&#26159;&#34987;&#20854;&#20182;&#36827;&#31243;&#21344;&#29992;\n    echo \"&#25991;&#20214;&#27491;&#22312;&#34987;&#20854;&#20182;&#36827;&#31243;&#21344;&#29992;&#65292;&#35831;&#31245;&#21518;&#20877;&#35797;&#12290;n\";\n}\n\n?&gt;<\/code><\/pre>\n<p>&#22312;&#36825;&#20010;&#31034;&#20363;&#20013;&#65292;&#25105;&#20204;&#39318;&#20808;&#23581;&#35797;&#20197;&#21482;&#35835;&#27169;&#24335;&#65288;&#8217;r&#8217;&#65289;&#25171;&#24320;&#25991;&#20214;&#12290;&#22914;&#26524;&#25991;&#20214;&#25104;&#21151;&#25171;&#24320;&#65292;&#25105;&#20204;&#21487;&#20197;&#32487;&#32493;&#25191;&#34892;&#20854;&#20182;&#25805;&#20316;&#65292;&#24182;&#22312;&#23436;&#25104;&#25805;&#20316;&#21518;&#20851;&#38381;&#25991;&#20214;&#12290;&#22914;&#26524;&#25991;&#20214;&#26080;&#27861;&#25171;&#24320;&#65292;&#36890;&#24120;&#26159;&#22240;&#20026;&#25991;&#20214;&#24050;&#32463;&#34987;&#20854;&#20182;&#36827;&#31243;&#21344;&#29992;&#12290;<\/p>\n<p>&#22914;&#26524;&#20320;&#38656;&#35201;&#26356;&#35814;&#32454;&#30340;&#38169;&#35823;&#20449;&#24687;&#65292;&#21487;&#20197;&#25429;&#33719; <code>fopen<\/code> &#30340;&#36820;&#22238;&#20540;&#24182;&#26681;&#25454;&#20854;&#20540;&#36827;&#34892;&#30456;&#24212;&#30340;&#22788;&#29702;&#12290;&#20363;&#22914;&#65306;<\/p>\n<pre><code class=\"language-php\">&lt;?php\n\n$file = 'example.txt';\n\n\/\/ &#23581;&#35797;&#20197;&#21482;&#35835;&#27169;&#24335;&#25171;&#24320;&#25991;&#20214;\n$handle = fopen($file, 'r');\n\nif (!$handle) {\n    if (feof(fopen('error.log', 'a'))) { \/\/ &#22914;&#26524;&#27809;&#26377;&#38169;&#35823;&#26085;&#24535;&#25991;&#20214;&#65292;&#21019;&#24314;&#19968;&#20010;&#26032;&#30340;\n        fwrite(fopen('error.log', 'w'), date('Y-m-d H:i:s') . \": \" . $file . \" &#26080;&#27861;&#25171;&#24320;n\");\n    } else {\n        fwrite(fopen('error.log', 'a'), date('Y-m-d H:i:s') . \": \" . $file . \" &#26080;&#27861;&#25171;&#24320;n\");\n    }\n\n    \/\/ &#22914;&#26524;&#27809;&#26377;&#38169;&#35823;&#26085;&#24535;&#25991;&#20214;&#65292;&#21019;&#24314;&#19968;&#20010;&#26032;&#30340;\n    $handle = fopen($file, 'r');\n\n    if ($handle) {\n        echo \"&#25991;&#20214;&#24050;&#25104;&#21151;&#25171;&#24320;&#12290;n\";\n\n        \/\/ &#20851;&#38381;&#25991;&#20214;\n        fclose($handle);\n    } else {\n        echo \"&#26080;&#27861;&#37325;&#26032;&#25171;&#24320;&#25991;&#20214;&#65292;&#35831;&#31245;&#21518;&#20877;&#35797;&#12290;n\";\n    }\n} else {\n    \/\/ &#25991;&#20214;&#25104;&#21151;&#25171;&#24320;&#65292;&#21487;&#20197;&#36827;&#34892;&#20854;&#20182;&#25805;&#20316;\n    echo \"&#25991;&#20214;&#24050;&#25104;&#21151;&#25171;&#24320;&#12290;n\";\n\n    \/\/ &#20851;&#38381;&#25991;&#20214;\n    fclose($handle);\n}\n?&gt;<\/code><\/pre>\n<p>&#22312;&#36825;&#20010;&#31034;&#20363;&#20013;&#65292;&#22914;&#26524;&#25991;&#20214;&#26080;&#27861;&#25171;&#24320;&#65292;&#25105;&#20204;&#20250;&#35760;&#24405;&#38169;&#35823;&#20449;&#24687;&#21040; <code>error.log<\/code> &#25991;&#20214;&#20013;&#65292;&#24182;&#20877;&#27425;&#23581;&#35797;&#25171;&#24320;&#25991;&#20214;&#12290;&#36825;&#26679;&#21487;&#20197;&#30830;&#20445;&#21363;&#20351;&#25991;&#20214;&#34987;&#20854;&#20182;&#36827;&#31243;&#21344;&#29992;&#65292;&#31243;&#24207;&#20173;&#28982;&#33021;&#22815;&#27491;&#24120;&#36816;&#34892;&#12290;<\/p>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div><div class=\"wp-block-columns p-0 border is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-columns px-4 py-3 border-bottom has-background is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\" style=\"background:linear-gradient(243deg,rgb(238,238,238) 0%,rgba(58,166,242,0.15) 100%)\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\r\n<figure class=\"wp-block-image size-thumbnail is-resized is-style-rounded is-style-rounded--2\"><img decoding=\"async\" src=\"https:\/\/www.zhaozhao123.cn\/myitems\/images\/sites16\/2025\/06\/zp-400x300.jpg\" alt=\"&#40657;&#26495;Bug&#35762;&#24072;\" class=\"wp-image-1849\" style=\"object-fit:cover;width:30px;height:30px\"><\/figure>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading my-0\" style=\"font-size:clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.175), 1rem);\">&#40657;&#26495;Bug&#35762;&#24072;<\/h2>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n\r\n\r\n\r\n<div class=\"wp-block-columns px-xl-5 px-4 py-xl-4 py-3 is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<body><h2>&#20171;&#32461;<\/h2><p>&#22312;PHP&#20013;&#22788;&#29702;&#25991;&#20214;&#26102;&#65292;&#32463;&#24120;&#20250;&#36935;&#21040;&#38656;&#35201;&#26816;&#26597;&#25991;&#20214;&#26159;&#21542;&#24403;&#21069;&#34987;&#20351;&#29992;&#30340;&#22330;&#26223;&#12290;&#30693;&#36947;&#19968;&#20010;&#25991;&#20214;&#26159;&#21542;&#34987;&#20351;&#29992;&#23545;&#20110;&#35768;&#22810;&#24212;&#29992;&#31243;&#24207;&#26469;&#35828;&#33267;&#20851;&#37325;&#35201;&#65292;&#20197;&#36991;&#20813;&#20914;&#31361;&#25110;&#28508;&#22312;&#30340;&#25968;&#25454;&#25439;&#22351;&#12290;&#22312;&#36825;&#31687;&#25945;&#31243;&#20013;&#65292;&#25105;&#20204;&#23558;&#25506;&#35752;&#22312;PHP&#29615;&#22659;&#20013;&#30830;&#23450;&#25991;&#20214;&#26159;&#21542;&#22312;&#29992;&#30340;&#21508;&#31181;&#26041;&#27861;&#12290;<\/p><h2>&#29702;&#35299;&#25991;&#20214;&#38145;<\/h2><p>&#22312;&#31867;Unix&#25805;&#20316;&#31995;&#32479;&#19978;&#65292;&#25991;&#20214;&#38145;&#26159;&#19968;&#31181;&#26426;&#21046;&#65292;&#29992;&#20110;&#38480;&#21046;&#22810;&#20010;&#36827;&#31243;&#23545;&#21516;&#19968;&#25991;&#20214;&#30340;&#35775;&#38382;&#12290;&#22312;PHP&#20013;&#65292;&#25105;&#20204;&#21487;&#20197;&#20351;&#29992;flock()&#20989;&#25968;&#26469;&#25805;&#20316;&#25991;&#20214;&#38145;&#12290;&#35813;&#20989;&#25968;&#20801;&#35768;&#25105;&#20204;&#20197;&#29420;&#21344;&#25110;&#20849;&#20139;&#27169;&#24335;&#38145;&#23450;&#19968;&#20010;&#25991;&#20214;&#12290;<\/p><p>&#29420;&#21344;&#38145;&#38450;&#27490;&#20854;&#20182;&#36827;&#31243;&#22312;&#25991;&#20214;&#34987;&#25345;&#26377;&#26102;&#33719;&#21462;&#35813;&#38145;&#12290;&#20849;&#20139;&#38145;&#20801;&#35768;&#22810;&#20010;&#36827;&#31243;&#21516;&#26102;&#35835;&#21462;&#25991;&#20214;&#65292;&#20294;&#31105;&#27490;&#23545;&#25991;&#20214;&#36827;&#34892;&#20889;&#25805;&#20316;&#12290;<\/p><h2>&#20351;&#29992;flock()&#36827;&#34892;&#25991;&#20214;&#38145;&#23450;<\/h2><p>flock() &#20989;&#25968;&#26159;&#26368;&#31616;&#21333;&#30340;&#26041;&#27861;&#20043;&#19968;&#26469;&#26816;&#26597;&#25991;&#20214;&#26159;&#21542;&#22312;&#20351;&#29992;&#20013;&#12290;&#36890;&#36807;&#23581;&#35797;&#23545;&#19968;&#20010;&#25991;&#20214;&#36827;&#34892;&#29420;&#21344;&#38145;&#24182;&#20351;&#29992;LOCK_NB&#65288;&#38750;&#38459;&#22622;&#65289;&#36873;&#39033;&#65292;&#22914;&#26524;&#25805;&#20316;&#25104;&#21151;&#65292;&#23558;&#31435;&#21363;&#36820;&#22238;&#12290;<\/p><p>&#20197;&#19979;&#26159;&#31034;&#20363;&#20195;&#30721;&#29255;&#27573;&#65306;<\/p><pre><code>$file = 'sample.txt';\n$fp = fopen($file, 'r+');\n\nif (flock($fp, LOCK_EX | LOCK_NB)) {\n    echo 'File is not in use.n';\n    \/\/ Perform file operations here\n    flock($fp, LOCK_UN);\n} else {\n    echo 'File is currently in use.n';\n}\n\nclose($fp);\n<\/code><\/pre><p>&#22914;&#26524;&#35843;&#29992; flock &#36820;&#22238;&#30495;&#65292;&#21017;&#25991;&#20214;&#26410;&#34987;&#21344;&#29992;&#65292;&#19988;&#24744;&#25104;&#21151;&#33719;&#24471;&#20102;&#29420;&#21344;&#38145;&#12290;&#22914;&#26524;&#36820;&#22238;&#20551;&#65292;&#21017;&#34920;&#31034;&#30001;&#21478;&#19968;&#20010;&#36827;&#31243;&#27491;&#22312;&#20351;&#29992;&#35813;&#25991;&#20214;&#12290;<\/p><h2>&#22312;&#20351;&#29992; flock() &#26102;&#30340;&#27880;&#24847;&#20107;&#39033;&#12290;<\/h2><p>&#38656;&#35201;&#27880;&#24847;&#30340;&#26159;&#65292;&#20351;&#29992; flock() &#36827;&#34892;&#25991;&#20214;&#38145;&#23450;&#24182;&#38750;&#24378;&#21046;&#24615;&#30340;&#65292;&#36825;&#24847;&#21619;&#30528;&#20854;&#20182;&#36827;&#31243;&#21487;&#20197;&#24573;&#30053;&#36825;&#20123;&#38145;&#12290;&#22312;PHP&#20013;&#30340;&#25991;&#20214;&#38145;&#26159;&#24314;&#35758;&#20351;&#29992;&#30340;&#65292;&#20320;&#24212;&#35813;&#22312;&#36825;&#31181;&#24773;&#20917;&#19979;&#20351;&#29992;&#19968;&#33268;&#30340;&#25991;&#20214;&#38145;&#23450;&#36923;&#36753;&#26469;&#35775;&#38382;&#25152;&#26377;&#30456;&#20851;&#36827;&#31243;&#12290;<\/p><h2>&#20351;&#29992;lsof&#36827;&#34892;&#39640;&#32423;&#25991;&#20214;&#20351;&#29992;&#26816;&#26597;<\/h2><p>&#22312;Unix&#31995;&#32479;&#19978;&#65292;&#21487;&#20197;&#20351;&#29992;&#22806;&#37096;&#24037;&#20855;&#22914;lsof&#65288;&#21363;&ldquo;&#21015;&#20986;&#25171;&#24320;&#25991;&#20214;&rdquo;&#65289;&#26469;&#26816;&#26597;&#19968;&#20010;&#25991;&#20214;&#26159;&#21542;&#34987;&#36827;&#31243;&#21344;&#29992;&#12290;&#36825;&#20010;&#21629;&#20196;&#34892;&#23454;&#29992;&#31243;&#24207;&#25552;&#20379;&#20102;&#20851;&#20110;&#30001;&#36827;&#31243;&#25171;&#24320;&#30340;&#25991;&#20214;&#30340;&#35814;&#32454;&#20449;&#24687;&#12290;&#20320;&#21487;&#20197;&#36890;&#36807;PHP&#35843;&#29992;shell_exec()&#26469;&#36816;&#34892;lsof&#12290;<\/p><p>&#22909;&#30340;&#65292;&#35831;&#25552;&#20379;&#38656;&#35201;&#32763;&#35793;&#30340;&#20869;&#23481;&#12290;<\/p><pre><code>$file = 'sample.txt';\n$output = shell_exec('lsof | grep '.escapeshellarg($file));\n\nif ($output) {\n    echo 'File is in use.n';\n} else {\n    echo 'File is not in use.n';\n}\n<\/code><\/pre><p>&#28982;&#32780;&#65292;&#20351;&#29992;lsof&#21487;&#33021;&#27604;&#36739;&#24930;&#65292;&#19988;&#24212;&#36991;&#20813;&#22312;&#24615;&#33021;&#25935;&#24863;&#30340;&#24212;&#29992;&#31243;&#24207;&#20013;&#20351;&#29992;&#12290;&#22914;&#26524;&#26410;&#22949;&#21892;&#28165;&#29702;&#29992;&#25143;&#36755;&#20837;&#65292;&#21017;&#36890;&#36807;shell_exec()&#20989;&#25968;&#20256;&#36882;&#30340;&#29992;&#25143;&#36755;&#20837;&#20063;&#20250;&#24102;&#26469;&#23433;&#20840;&#39118;&#38505;&#12290;<\/p><h2>&#25991;&#20214;&#26368;&#21518;&#20462;&#25913;&#26102;&#38388;&#26816;&#26597;<\/h2><p>&#21478;&#19968;&#31181;&#25512;&#26029;&#25991;&#20214;&#26159;&#21542;&#22312;&#20351;&#29992;&#30340;&#26041;&#27861;&#26159;&#36890;&#36807;&#35843;&#29992;filemtime()&#20989;&#25968;&#26816;&#26597;&#20854;&#26368;&#21518;&#20462;&#25913;&#26102;&#38388;&#12290;&#22914;&#26524;&#35813;&#26102;&#38388;&#25139;&#38750;&#24120;&#36817;&#65292;&#21487;&#20197;&#26681;&#25454;&#24212;&#29992;&#31243;&#24207;&#30340;&#24615;&#36136;&#20570;&#20986;&#20551;&#35774;&#12290;<\/p><p>&#22909;&#30340;&#65292;&#35831;&#25552;&#20379;&#38656;&#35201;&#32763;&#35793;&#30340;&#20869;&#23481;&#12290;<\/p><pre><code>$file = 'sample.txt';\n$lastModified = filemtime($file);\n\nif (time() - $lastModified &lt; 5) { \/\/ Threshold of 5 seconds\n    echo 'File might be in use.n';\n} else {\n    echo 'File is probably not in use.n';\n}\n<\/code><\/pre><p>&#28982;&#32780;&#65292;&#36825;&#31181;&#26041;&#27861;&#19981;&#33021;&#32473;&#20986;&#30830;&#23450;&#30340;&#31572;&#26696;&#65292;&#24212;&#35880;&#24910;&#20351;&#29992;&#12290;<\/p><h2>&#38169;&#35823;&#25233;&#21046;@&#36816;&#31639;&#31526;<\/h2><p>&#22312;&#33050;&#26412;&#25110;&#33258;&#21160;&#21270;&#20013;&#65292;&#23581;&#35797;&#23545;&#19968;&#20010;&#25991;&#20214;&#36827;&#34892;&#25805;&#20316;&#21487;&#33021;&#20250;&#22240;&#20026;&#35813;&#25991;&#20214;&#27491;&#22312;&#20351;&#29992;&#32780;&#23548;&#33268;&#38169;&#35823;&#12290;PHP&#30340;&#38169;&#35823;&#25511;&#21046;&#36816;&#31639;&#31526;@&#21487;&#20197;&#25233;&#21046;&#38169;&#35823;&#28040;&#24687;&#65292;&#24182;&#19988;&#21487;&#20197;&#22312;&#19982;&#25991;&#20214;&#25805;&#20316;&#32467;&#21512;&#20351;&#29992;&#26102;&#26816;&#26597;&#25991;&#20214;&#30340;&#21487;&#35775;&#38382;&#24615;&#12290;<\/p><p>&#35831;&#25552;&#20379;&#38656;&#35201;&#32763;&#35793;&#30340;&#20869;&#23481;&#12290;<\/p><pre><code>$file = 'sample.txt';\n$fp = @fopen($file, 'r+');\n\nif ($fp) {\n    echo 'File is accessible.n';\n    fclose($fp);\n} else {\n    echo 'File is not accessible or in use.n';\n}\n<\/code><\/pre><p>&#28982;&#32780;&#65292;&#36825;&#31181;&#26041;&#27861;&#24182;&#19981;&#25512;&#33616;&#20351;&#29992;&#65292;&#22240;&#20026;&#36825;&#20250;&#25233;&#21046;&#21487;&#33021;&#23545;&#35843;&#35797;&#33267;&#20851;&#37325;&#35201;&#30340;&#38169;&#35823;&#20449;&#24687;&#12290;<\/p><h2>&#32467;&#35770;&#12290;<\/h2><p>&#22312;&#26412;&#25945;&#31243;&#20013;&#65292;&#25105;&#20204;&#35752;&#35770;&#20102;&#29992;&#20110;&#26816;&#26597;&#25991;&#20214;&#26159;&#21542;&#34987;&#20351;&#29992;&#30340;&#19981;&#21516;&#26041;&#27861;&#12290;&#25105;&#20204;&#35302;&#21450;&#20102;&#20351;&#29992; fcntl&#65288;flock&#65289;&#36827;&#34892;&#30340;&#25991;&#20214;&#38145;&#23450;&#65292;&#20197;&#21450;&#22806;&#37096;&#24037;&#20855;&#22914; lsof &#30340;&#20351;&#29992;&#65292;&#36824;&#21253;&#25324;&#26816;&#26597;&#25991;&#20214;&#20462;&#25913;&#26102;&#38388;&#30340;&#26041;&#27861;&#21644;&#38169;&#35823;&#25233;&#21046;&#31574;&#30053;&#12290;&#34429;&#28982; fcntl &#25552;&#20379;&#20102;&#19968;&#31181;&#23433;&#20840;&#30340;&#26041;&#24335;&#26469;&#38145;&#23450;&#25991;&#20214;&#65292;&#20294;&#24517;&#39035;&#35760;&#20303;&#36825;&#31181;&#26041;&#27861;&#26159;&#24314;&#35758;&#24615;&#30340;&#65292;&#24182;&#19988;&#38656;&#35201;&#22312;&#25972;&#20010;&#35775;&#38382;&#35813;&#25991;&#20214;&#30340;&#25152;&#26377;&#33050;&#26412;&#20043;&#38388;&#20445;&#25345;&#19968;&#33268;&#30340;&#38145;&#36923;&#36753;&#12290;<\/p><p>&#22312;&#36866;&#24403;&#32467;&#21512;&#36825;&#20123;&#25216;&#26415;&#30340;&#24773;&#20917;&#19979;&#65292;&#20320;&#21487;&#20197;&#26500;&#24314;&#19968;&#20010;&#29992;&#20110;&#22788;&#29702;&#25991;&#20214;&#25805;&#20316;&#24182;&#36991;&#20813;&#20914;&#31361;&#30340;&#20581;&#22766;&#31995;&#32479;&#12290;&#35760;&#20303;&#35201;&#26681;&#25454;&#24212;&#29992;&#30340;&#38656;&#27714;&#20351;&#29992;&#27599;&#31181;&#26041;&#27861;&#65292;&#24182;&#22987;&#32456;&#27880;&#24847;&#23433;&#20840;&#38519;&#38449;&#65292;&#29305;&#21035;&#26159;&#22312;&#35843;&#29992;&#22806;&#37096;&#24037;&#20855;&#26102;&#12290;<\/p><\/body>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div><div class=\"wp-block-columns p-0 border is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-columns px-4 py-3 border-bottom has-background is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\" style=\"background:linear-gradient(243deg,rgb(238,238,238) 0%,rgba(58,166,242,0.15) 100%)\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<div class=\"wp-block-group is-nowrap is-layout-flex wp-container-core-group-is-layout-6c531013 wp-block-group-is-layout-flex\">\r\n<figure class=\"wp-block-image size-thumbnail is-resized is-style-rounded is-style-rounded--3\"><img decoding=\"async\" src=\"https:\/\/www.zhaozhao123.cn\/myitems\/images\/sites16\/2025\/06\/xygcfznnzczhsdmwydzhsmzzzmddnq-400x300.jpg\" alt=\"&#38271;&#24037;&#30721;&#22900;1523\" class=\"wp-image-2906\" style=\"object-fit:cover;width:30px;height:30px\"><\/figure>\r\n\r\n\r\n\r\n<h2 class=\"wp-block-heading my-0\" style=\"font-size:clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.175), 1rem);\">&#38271;&#24037;&#30721;&#22900;1523<\/h2>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n\r\n\r\n\r\n<div class=\"wp-block-columns px-xl-5 px-4 py-xl-4 py-3 is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\r\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\r\n<p>&#22312; PHP &#20013;&#65292;&#20320;&#21487;&#20197;&#20351;&#29992; <code>file_exists()<\/code> &#20989;&#25968;&#26469;&#26816;&#26597;&#25991;&#20214;&#26159;&#21542;&#23384;&#22312;&#65292;&#24182;&#36890;&#36807; <code>stat()<\/code> &#20989;&#25968;&#33719;&#21462;&#25991;&#20214;&#30340;&#35814;&#32454;&#20449;&#24687;&#65288;&#22914;&#25991;&#20214;&#22823;&#23567;&#21644;&#21019;&#24314;&#26102;&#38388;&#65289;&#12290;&#28982;&#21518;&#65292;&#20320;&#21487;&#20197;&#20351;&#29992;&#36825;&#20123;&#20449;&#24687;&#26469;&#21028;&#26029;&#25991;&#20214;&#26159;&#21542;&#34987;&#20854;&#20182;&#31243;&#24207;&#25152;&#21344;&#29992;&#12290;<\/p>\n<p>&#20197;&#19979;&#26159;&#22914;&#20309;&#26816;&#26597;&#19968;&#20010;&#25991;&#20214;&#26159;&#21542;&#27491;&#22312;&#20351;&#29992;&#30340;&#31034;&#20363;&#65306;<\/p>\n<pre><code class=\"language-php\">&lt;?php\n\n\/\/ &#20551;&#35774; $filename &#26159;&#20320;&#24819;&#35201;&#26816;&#26597;&#30340;&#25991;&#20214;&#21517;\n$file = \"example.txt\";\n\nif (file_exists($file)) {\n    \/\/ &#26816;&#26597;&#25991;&#20214;&#26159;&#21542;&#20026;&#30446;&#24405;\n    if (!is_dir($file)) {\n        echo \"&#25991;&#20214; $file &#19981;&#23384;&#22312;\";\n    } else {\n        \/\/ &#33719;&#21462;&#25991;&#20214;&#26368;&#21518;&#20462;&#25913;&#30340;&#26102;&#38388;&#25139;\n        $lastModifiedTime = filemtime($file);\n\n        \/\/ &#33719;&#21462;&#25991;&#20214;&#30340;&#26435;&#38480;&#20301;\n        $permissions = stat($file);\n\n        \/\/ &#22914;&#26524;&#25991;&#20214;&#24050;&#23384;&#22312;&#19988;&#26410;&#34987;&#21024;&#38500;&#65292;&#37027;&#20040;&#23427;&#29616;&#22312;&#26159;&#21487;&#29992;&#30340;\n        if ($permissions &amp;&amp; $permissions['uid'] == getmypid()) {\n            echo \"&#25991;&#20214; $file &#27491;&#22312;&#20351;&#29992;\";\n        }\n    }\n} else {\n    echo \"&#25991;&#20214; $file &#19981;&#22312;&#20351;&#29992;\";\n}\n?&gt;<\/code><\/pre>\n<p>&#22312;&#36825;&#20010;&#20363;&#23376;&#20013;&#65306;<\/p>\n<ol>\n<li>&#25105;&#20204;&#39318;&#20808;&#23581;&#35797;&#36890;&#36807; <code>file_exists()<\/code> &#20989;&#25968;&#26816;&#26597;&#25991;&#20214;&#26159;&#21542;&#23384;&#22312;&#12290;<\/li>\n<li>&#22914;&#26524;&#25991;&#20214;&#23384;&#22312;&#65292;&#25105;&#20204;&#26816;&#26597;&#23427;&#26159;&#21542;&#26159;&#19968;&#20010;&#30446;&#24405;&#12290;<\/li>\n<li>&#22914;&#26524;&#25991;&#20214;&#19981;&#26159;&#19968;&#20010;&#30446;&#24405;&#65292;&#25105;&#20204;&#33719;&#21462;&#25991;&#20214;&#26368;&#21518;&#20462;&#25913;&#30340;&#26102;&#38388;&#25139;&#21644;&#25991;&#20214;&#30340;&#26435;&#38480;&#20301;&#12290;<\/li>\n<li>&#22914;&#26524;&#25991;&#20214;&#24050;&#32463;&#23384;&#22312;&#24182;&#19988;&#30001;&#24403;&#21069;&#29992;&#25143;&#25317;&#26377;&#35835;&#21462;&#26435;&#38480;&#65292;&#37027;&#20040;&#25105;&#20204;&#21487;&#20197;&#30830;&#23450;&#36825;&#20010;&#25991;&#20214;&#26159;&#21487;&#29992;&#30340;&#12290;<\/li>\n<\/ol>\n<p>&#35831;&#27880;&#24847;&#65292;&#36825;&#21482;&#26159;&#19968;&#20010;&#22522;&#26412;&#30340;&#20363;&#23376;&#65292;&#23454;&#38469;&#24212;&#29992;&#20013;&#21487;&#33021;&#38656;&#35201;&#26356;&#22797;&#26434;&#30340;&#36923;&#36753;&#26469;&#22788;&#29702;&#21508;&#31181;&#19981;&#21516;&#30340;&#24773;&#20917;&#65292;&#20363;&#22914;&#25991;&#20214;&#25152;&#26377;&#26435;&#12289;&#25991;&#20214;&#38145;&#23450;&#31561;&#12290;<\/p>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Bug&#32534;&#35793;&#29422; &#22312; PHP &#20013;&#65292;&#20320;&#21487;&#20197;&#20351;&#29992; fopen &#20989;&#25968;&#26469;&#23581;&#35797;&#25171;&#24320;..<\/p>\n","protected":false},"author":1,"featured_media":0,"menu_order":0,"template":"","meta":{"_acf_changed":false},"tags":[],"my1js2nav":[42],"tuisongtax":[],"class_list":["post-658","my1js","type-my1js","status-publish","hentry","my1js2nav-xtywj"],"acf":{"qian_art_seotitle":"","qian_art_seotitle_source":{"label":"SEO\u6807\u9898","type":"text","formatted_value":""},"qian_art_seokws":"","qian_art_seokws_source":{"label":"SEO\u5173\u952e\u8bcd","type":"text","formatted_value":""},"qian_art_stzhong":"","qian_art_stzhong_source":{"label":"\u4e2d | \u77ed\u6807\u9898","type":"text","formatted_value":""}},"_links":{"self":[{"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/my1js\/658","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/my1js"}],"about":[{"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/types\/my1js"}],"author":[{"embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/users\/1"}],"wp:attachment":[{"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/media?parent=658"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/tags?post=658"},{"taxonomy":"my1js2nav","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/my1js2nav?post=658"},{"taxonomy":"tuisongtax","embeddable":true,"href":"https:\/\/www.zhaozhao123.cn\/php\/wp-json\/wp\/v2\/tuisongtax?post=658"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}