當前位置:首頁 » 編程語言 » chmodphp

chmodphp

發布時間: 2022-04-13 23:16:33

『壹』 chmod 0755修改文件讀寫許可權 那可以用sh sys/bin 運行php

PHP修改文件許可權可以用chmod()函數來進行修改,PHP也可以在sh模式下運行的,PHP從4.3.0就支持cli模式下運行php文件了,例:php test.php

『貳』 php網站文件目錄許可權如何開

將許可權設置成777就可以了啊。chmod 777 【文件名】
「777」代表許可權,對應rwdrwdrwd,從左往右第一位『7』代表屬主的許可權對應第一組『rwd』,r標識可以讀,w代表可以寫,x代表可以執行。
​第二位『7』代表屬組的許可權,第三位『7』代表所有人的許可權。例如只允許屬主讀寫執行賦予700許可權對應rwd許可權。也可以使用a、u、字母表示許可權,比如chmod a+x 【文件名】 是賦予任何人執行的許可權,chmod a+r 【文件名】是賦予所有人讀得許可權,chmod a+w 【文件名】是賦予所有人寫的許可權,等等。
不過設置777不安全,最好設置成可讀就可以了,744應該可以。

『叄』 php 如何把數組讀到文件

if(isset($_POST['sub'])){ $cfg = array('contact'=>$_POST['contact']); //把數據存入數組 file_put_contents('./data/contact.cache',serialize($cfg)); //把數組序列化之後,寫到contact.cache里, $this->redirect('other/contact');//跳轉 } else{ $fp = fopen('./data/contact.cache','r');//讀 $cf = unserialize(fread($fp,filesize('./data/contact.cache')));//反序列化,並賦值 $this->assign('cfg',$cf);//送到前台模板 $this->display('other/contact'); }

『肆』 php ubuntu下調用 chmod()函數 php報錯提示「你無權操作該目錄」,怎麼辦

許可權不夠. 需要root許可權 才能執行.

你可以試試給你的那個PHP文件 賦值root的許可權看看

代碼獲得root許可權.... 那人家不是可以把你伺服器給拿了?

『伍』 php下怎麼改變lunux的文件許可權

PHP 中的 chmod() 函數可以實現改變文件的許可權

chmod() 函數改變文件模式(各種許可權)。

如果成功則返回 TRUE,否則返回 FALSE。

chmod(file,mode)

參數說明
file 必需。規定要檢查的文件。
mode 可選。規定新的許可權。

mode 參數由 4 個數字組成:

第一個數字永遠是 0
第二個數字規定所有者的許可權
第二個數字規定所有者所屬的用戶組的許可權
第四個數字規定其他所有人的許可權

可能的值(如需設置多個許可權,請對下面的數字進行總計):

1 - 執行許可權
2 - 寫許可權
4 - 讀許可權

例子

<?php
// 所有者可讀寫,其他人沒有任何許可權
chmod("test.txt",0600);

// 所有者可讀寫,其他人可讀
chmod("test.txt",0644);

// 所有者有所有許可權,其他所有人可讀和執行
chmod("test.txt",0755);

// 所有者有所有許可權,所有者所在的組可讀
chmod("test.txt",0740);
?>

『陸』 如何在linux下安裝多個不同版本的PHP

Linux下部署php多版本共存
背景說明
自php7問世,身為最新版本控的我馬上升級體驗,但是由於伺服器上還有舊程序在運行,只好部署一個php多版本共存環境。
現有環境是lnmp
- CentOS 6.7
- nginx 1.10.1
- mariadb-10.0.26
- php 7.0.8
為了更好兼容舊的php程序,推薦使用5.4.45. 主要是兼容mysql擴展。
開始安裝
首先要下載php-5.4.45.tar.gz源碼包。
通過源碼安裝
# tar xzvf php-5.4.45.tar.gz
# cd php-5.4.45

# ./configure --prefix=/usr/local/php54 --with-config-file-path=/usr/local/php54/etc --enable-fpm --with-fpm-user=www --with-fpm-group=www --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-iconv-dir --with-freetype-dir=/usr/local/freetype --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-mbstring --with-mcrypt --enable-ftp --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --with-gettext --disable-fileinfo --enable-intl --with-xsl

# make ZEND_EXTRA_LIBS='-liconv'
# make install
# cp php.ini-proction /usr/local/php/etc/php.ini

------------------------------------------------------------------------------------------------
php.ini 配置
post_max_size = 50M
upload_max_filesize = 50M
date.timezone = PRC
short_open_tag = On
cgi.fix_pathinfo=0
max_execution_time = 300
disable_functions=passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,popen,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server
------------------------------------------------------------------------------------------------
php-fpm.conf 配置
------------------------------
# vim /usr/local/php/etc/php-fpm.conf1
[global]
pid = /usr/local/php54/var/run/php-fpm.pid
error_log = /usr/local/php54/var/log/php-fpm.log
log_level = notice

[www]
listen = /tmp/php54-cgi.sock
listen.backlog = -1
listen.allowed_clients = 127.0.0.1:9001
listen.owner = www
listen.group = www
listen.mode = 0666
user = www
group = www
pm = dynamic
pm.max_children = 40
pm.start_servers = 20
pm.min_spare_servers = 20
pm.max_spare_servers = 40
request_terminate_timeout = 100
request_slowlog_timeout = 0
slowlog = var/log/slow.log

----------------------------------------------------------------------------------
啟動 php-fpm
# cp sapi/fpm/init.d.php-fpm /etc/init.d/php54-fpm
# chmod +x /etc/init.d/php54-fpm
# /etc/init.d/php54-fpm start
-------------------------------------------------------------------------------------------
修改nginx配置,對需要的服務配置使用php-5.4.45
location ~ [^/]\.php(/|$)
{
try_files $uri =404;
fastcgi_pass unix:/tmp/php54-cgi.sock;
fastcgi_index index.php;
include fastcgi.conf;
}
----------------------------------------------------------------------------------------
配置php-5.4.45 的php54-fpm 開機自動啟動
# chkconfig --add php54-fpm
# chkconfig php54-fpm on

『柒』 PHP確保chmod成功,怎麼解決

有兩種方式,
一種方式,例如你要創建一個文件 ,就這么寫:mkdir('/var/www/html/App/Runtime',0777);
還有一種方式,
進入LinuxShell編輯器
找到你要賦予的文件夾,指定到這個文件夾後,通過命令 :chmod R 777 回車
就可以了

『捌』 如何通過Linux命令行使用和運行PHP腳本

1. 在安裝完PHP和Apache2後,我們需要安裝PHP命令行解釋器。

復制代碼 代碼如下:

# apt-get install php5-cli
[Debian 及類似系統]# yum install php-cli
[CentOS 及類似系統]

接下來我們通常要做的是,在 /var/www/html (這是 Apache2 在大多數發行版中的工作目錄)這個位置創建一個內容為 <?php phpinfo(); ?> ,名為 infophp.php 的文件來測試(PHP是否安裝正確),執行以下命令即可。

復制代碼 代碼如下:

# echo '<?php phpinfo(); ?>' > /var/www/html/infophp.php

然後,將瀏覽器訪問 http://127.0.0.1/infophp.php ,這將會在網路瀏覽器中打開該文件。

檢查PHP信息

不需要任何瀏覽器,在Linux終端中也可以獲得相同的結果。在Linux命令行中執行 /var/www/html/infophp.php ,如:

復制代碼 代碼如下:

# php -f /var/www/html/infophp.php

從命令行檢查PHP信息

由於輸出結果太大,我們可以通過管道將上述輸出結果輸送給 less 命令,這樣就可以一次輸出一屏了,命令如下:

復制代碼 代碼如下:

# php -f /var/www/html/infophp.php | less

檢查所有PHP信息

這里,『-f『選項解析並執行命令後跟隨的文件。

2. 我們可以直接在Linux命令行使用 phpinfo() 這個十分有價值的調試工具而不需要從文件來調用,只需執行以下命令:

復制代碼 代碼如下:

# php -r 'phpinfo();'

PHP調試工具

這里,『-r『 選項會讓PHP代碼在Linux終端中不帶 < 和 > 標記直接執行。

3. 以交互模式運行PHP並做一些數學運算。這里,『-a『 選項用於以交互模式運行PHP。

復制代碼 代碼如下:

# php -aInteractive shellphp > echo 2+3;5php > echo 9-6;3php >
echo 5*4;20php > echo 12/3;4php > echo 12/5;2.4php > echo
2+3-1;4php > echo 2+3-1*3;2php > exit

輸入 『exit『 或者按下 『ctrl+c『 來關閉PHP交互模式。

啟用PHP交互模式

4. 你可以僅僅將PHP腳本作為shell腳本來運行。首先,創建在你當前工作目錄中創建一個PHP樣例腳本。

復制代碼 代碼如下:

# echo -e '#!/usr/bin/php\n<?php phpinfo(); ?>' > phpscript.php

注意,我們在該PHP腳本的第一行使用 #!/usr/bin/php ,就像在shell腳本中那樣( /bin/bash )。第一行的 #!/usr/bin/php 告訴Linux命令行用 PHP 解釋器來解析該腳本文件。

其次,讓該腳本可執行:

復制代碼 代碼如下:

# chmod 755 phpscript.php

接著來運行它,

復制代碼 代碼如下:

# ./phpscript.php

5. 你可以完全靠自己通過交互shell來創建簡單函數,這你一定會被驚到了。下面是循序漸進的指南。

開啟PHP交互模式。

復制代碼 代碼如下:

# php -a

創建一個函數,將它命名為 addition 。同時,聲明兩個變數 $a 和 $b 。

復制代碼 代碼如下:

php > function addition ($a, $b)

使用花括弧來在其間為該函數定義規則。

復制代碼 代碼如下:

php > {

定義規則。這里,該規則講的是添加這兩個變數。

復制代碼 代碼如下:

php { echo $a + $b;

所有規則定義完畢,通過閉合花括弧來封裝規則。

復制代碼 代碼如下:

php {}

測試函數,添加數字4和3,命令如下:

復制代碼 代碼如下:

php > var_mp (addition(4,3));

樣例輸出

復制代碼 代碼如下:

7NULL

你可以運行以下代碼來執行該函數,你可以測試不同的值,你想來多少次都行。將里頭的 a 和 b 替換成你自己的值。

復制代碼 代碼如下:

php > var_mp (addition(a,b));
php > var_mp (addition(9,3.3));

樣例輸出

復制代碼 代碼如下:

12.3NULL

創建PHP函數

你可以一直運行該函數,直至退出交互模式(ctrl+z)。同時,你也應該注意到了,上面輸出結果中返回的數據類型為 NULL。這個問題可以通過要求 php 交互 shell用 return 代替 echo 返回結果來修復。

只需要在上面的函數的中 『echo『 聲明用 『return『 來替換

替換

復制代碼 代碼如下:

php { echo $a + $b;



復制代碼 代碼如下:

php { return $a + $b;

剩下的東西和原理仍然一樣。

這里是一個樣例,在該樣例的輸出結果中返回了正確的數據類型。

PHP函數

永遠都記住,用戶定義的函數不會從一個shell會話保留到下一個shell會話,因此,一旦你退出交互shell,它就會丟失了。

『玖』 如何使用Ubuntu中的Crontab定時執行PHP文件

先確認自己在LINUX Ubuntu 伺服器上php的安裝模式,以CGI 模塊還是Apache模塊方式安裝? 如果不確定php安裝模式,可以使用 phpinfo() 函數查看:將<?php phpinfo(); ?> 寫在php文件中上傳到網站伺服器,訪問該頁面,就在頁面頂部我們找到「Server API」,如果類似「Apache 2.0 Handler」,那麼就是apache模塊;否則php是CGI 模式(shell 命令行模式)。這兩種不同的php安裝模式,正對應於前面介紹的ubuntu crontab 定時執行php的兩種解決方法。
CGI 編譯
如果Server API是cgi,那麼在需要cron執行的php腳本的第一行額外加入一段代碼#!/usr/bin/php -q(類似PERL語法),指定伺服器中php可執行程序的位置,具體步驟如下:
1. 確認Ubuntu系統已經安裝了php5-cli模塊,安裝命令:apt-get install php5-cli。在目錄 /usr/bin/php下生成 php可執行程序。
2. 編輯待定時執行的php腳本文件crontab.php,如:
#!/usr/bin/php -q
<?php
$file = 「/var/www/」.date(『H』).』_』.date(『i』).』_』.date(『s』).』.txt』;
file_put_contents($file,date(『Y-m-d』));
?>
3. 編輯 crontab 任務:
打開終端,輸入命令:crontab -e,
Select an editor. To change later, run 『select-editor』.
1. /bin/ed
2. /bin/nano <—- easiest
3. /usr/bin/vim.tiny
選擇一個Ubuntu編輯器後,編輯/tmp/crontab.AuN7IQ/crontab 文件:
# m h dom mon dow command
在下面添加定時執行命令:
* * * * * php /path/to/your/cron.php
5個星號分別代表定時指定每分、小時、日、月、周。如每天的下午7點執行crontab.php,命令為:
* 19 * * * php /var/www/cron/crontab.php
然後按Ctrl+O保存,Ctrl+X退出。
4. 執行以下Crontab命令行
Shell> crontab crontab
確認crontab.php的許可權為可執行("chmod 755 /var/www/cron/crontab.php")。
Apache 模塊
如果php安裝是以 apache 模式運行的,那麼在要在ubuntu伺服器定時執行的php腳本開頭就不用加 #!/usr/bin/php -q 這一行。php腳本在ubuntu 通過crontab的定時執行通過Lynx瀏覽器的自動訪問來完成。
1. Lynx瀏覽器安裝。
Lynx瀏覽器是一款輕便的web瀏覽器,使用於大部分Unix 和Linux系統環境。安裝命令:sudo apt-get install lynx。
2. 編輯cron任務,命令crontab -e

『拾』 在PHP中,如何實現寫入或創建另1個PHP文件

  1. 使用fopen,fwrite,fclose 方法

  2. 簡單的例子如下<?php
    $afile = fopen("afile.php", "w") or die("Unable to open file!");
    $txt = "Hi, ";
    fwrite($myfile, $txt);
    $txt = "success ";
    fwrite($afile, $txt);
    fclose($afile);
    ?>

  3. 關鍵是寫文件的地方,必須要有寫的許可權。尤其是linux伺服器。 可用 chmod 方法 來更改許可權。

熱點內容
雲伺服器ecs服務條款 發布:2025-01-20 19:19:36 瀏覽:46
安卓系統顯示屏怎麼設置屏保 發布:2025-01-20 19:18:53 瀏覽:895
有鎖機和配置鎖哪個好 發布:2025-01-20 19:18:05 瀏覽:766
安卓版軟體如何設置 發布:2025-01-20 18:58:53 瀏覽:57
java中級項目案例 發布:2025-01-20 18:58:52 瀏覽:912
sql日誌查看工具 發布:2025-01-20 18:57:12 瀏覽:242
資料庫刪除表格 發布:2025-01-20 18:51:22 瀏覽:439
c語言head 發布:2025-01-20 18:41:36 瀏覽:736
xboxone絕地求生怎麼設置伺服器 發布:2025-01-20 18:22:12 瀏覽:176
編譯字母表 發布:2025-01-20 18:20:38 瀏覽:243