① php 把數組的所有元素改成0
這樣
$a= "222||||||501|||600||||||500";
$a = explode('|||',$sort1);
$a[1] = 0;
$a[4] = 0;
print_r ($a) ; //輸出Array ( [0] => 222 [1] =>0 [2] => 501 [3] => 600 [4] =>0 [5] => 500 )
② php數組如何改變KEY值
沒有類似的功能函數 只能是循環一下 重新賦值了
foreach ( $array as $i=>$val ) {
$key = $val['pagetype']; //取出要作為key的欄位
$array[$key] = $val; //賦值
unset($array[$i]); //刪掉原有的鍵值
}
③ php數組中的值是否可以永久改變
數組的值是可以改變的呀,比如這樣
$array['name'] = "admin";
$array['name'] = "admin888";
這時,$array['name']的值就是admin888,它是根據最後一次賦值來決定該數組中的值是什麼,
④ php 給一個數組元素值為空的元素重新賦值為0呢
這樣
$a= "222||||||501|||600||||||500";
$a = explode('|||',$sort1);
$a[1] = 0;
$a[4] = 0;
print_r ($a) ; //輸出Array ( [0] => 222 [1] =>0 [2] => 501 [3] => 600 [4] =>0 [5] => 500 )
⑤ PHP數組被重新聲明後數組的值為啥還在
理解一下。
PHP中變數作用域就是當前函數(可以有特殊方式突破作用域限制).
你這個函數是遞歸引用 ,每次遞歸,$files都是新變數,返回給上一次遞歸合並到上一級遞歸的$files。你的第二個列印斷點,是在遞歸調用後,當時找到文件時 (else分支) 並沒有列印,所以第二次列印找到文件時,是合並到上級遞歸調用後再列印,就包含前面找到的文件。
試一下我下面的方法(部分代碼略)。
functionmyscandin($dir=UEDITOR,$isrecursion=false){
static$files=array();
//非遞歸調用(說明是手動調用)中重置變數
if(!$isrecursion){
$files=array();
}
...
foreach(...){
if(...){
//這里遞歸調用傳入true
myscandin($dir.DIRECTORY_SEPARATOR.$file,true);
}else{
$files[]=$dir.DIRECTORY_SEPARATOR.$file;
}
}
return$files;
}
⑥ php中怎樣將數組重置為空
$array[] = array('id'=>'1');
//$array = array();
print_r($array);
中間注釋那行 就是把他設置為空 也就是給他重新賦個空值就行。
⑦ php如何替換數組結果的數值
這個其實不難啊,把數組循環一下,把每個的附件名稱拿出來給到一個變數,然後把這個變數加密,再根據附件名稱的數組索引,覆蓋一下原來的值就可以了,希望對你有幫助
⑧ PHP 如何更改數組所有的值
直接對數組進行修改就好了
<?php
$arr=Array(3=>"ab",1=>"abc");
print_r($arr);
$arr[3]=md5($arr[3]);
$arr[1]=md5($arr[1]);
echo "<br />";
print_r($arr);
?>
⑨ php 數組索引值如何重新從0開始遞增
對於索引數組,php還有提供了另外一個內置函數,能夠重置數組索引array_merge($arr),當array_merge()只傳入一個參數且鍵名是整數,返回該數組,其鍵名以0開始進行重新索引。
其中PHP中的數組實際上是一個有序映射。映射是一種把values關聯到keys的類型。換言之,數組是特殊的變數,可以同時保存一個以上的值。
在PHP中數組類型有三種:索引數組(帶有數字索引的數組),關聯數組(帶有指定鍵的數組),多維數組(包含一個或多個數組的數組)。
(9)php重置數組的值擴展閱讀:
注意事項:
1、兩個相同的索引數組,同時執行,後面的會把前面的覆蓋掉。
2、在php中 索引數組的下標可以不連續。
3、如果兩個下標是空會自動增加。
4、數組的自動增長下標,默認是從0開始的,自動增長的都是出現過的最大值加1。
5、關聯數組不會影響到索引數組的排序規則,就算是索引數組是負數 也不會影響,最大值+1。
⑩ PHP重置數組為連續數字索引的幾種方式
PHP重置數組為連續數字索引的幾種方式
比如這樣的一個php數組:
[php]view plain
$arr=array(
1=>'apple',
3=>'banana',
5=>'orange'
);
想要轉換為這樣的數組:
[php]view plain
$arr=array(
0=>'apple',
1=>'banana',
2=>'orange'
);
1、推薦的方式 array_values 方法
這樣方式無論對普通數組還是關聯數組都適用
[php]view plain
<?php
$arr=array(
1=>'apple',
3=>'banana',
5=>'orange'
);
print_r(array_values($arr));
$arr1=array(
'name'=>'jerry',
'age'=>16,
'height'=>'18cm'
);
print_r(array_values($arr1));
輸出結果:
[sql]view plain
[root@localhostphp]#phparray.php
Array
(
[0]=>apple
[1]=>banana
[2]=>orange
)
Array
(
[0]=>jerry
[1]=>16
[2]=>18cm
)
2、使用 array_merge 方法
該方法如果只給了一個數組並且該數組是數字索引的,則鍵名會以連續方式重新索引。所以只能適用於數字索引。
[php]view plain
<?php
$arr=array(
1=>'apple',
3=>'banana',
5=>'orange'
);
print_r(array_merge($arr));
$arr1=array(
'name'=>'jerry',
'age'=>16,
'height'=>'18cm'
);
print_r(array_merge($arr1));
輸出結果:
[php]view plain
[root@localhostphp]#phparray.php
Array
(
[0]=>apple
[1]=>banana
[2]=>orange
)
Array
(
[name]=>jerry
[age]=>16
[height]=>18cm
)
3、循環遍歷
最原始的方式,臃腫且不夠優雅,極力抵制。
[php]view plain
<?php
functionresetArr($arr){
$temp=array();
foreach($arras$v){
$temp[]=$v;
}
return$temp;
}
$arr=array(
1=>'apple',
3=>'banana',
5=>'orange'
);
print_r(resetArr($arr));
$arr1=array(
'name'=>'jerry',
'age'=>16,
'height'=>'18cm'
);
print_r(resetArr($arr1));
That『s it!