Çalışma Anı Yapılandırması

Bu işlevlerin davranışı php.ini içindeki ayarlardan etkilenir.

PHP Seçenekleri ve Bilgileri için Yapılandırma Seçenekleri
İsim Öntanımlı Değişlik Yeri Sürüm Bilgisi
assert.active "1" INI_ALL PHP 8.3.0 ve sonrasında kullanımı önerilmemektedir.
assert.bail "0" INI_ALL PHP 8.3.0 ve sonrasında kullanımı önerilmemektedir.
assert.warning "1" INI_ALL PHP 8.3.0 ve sonrasında kullanımı önerilmemektedir.
assert.callback NULL INI_ALL PHP 8.3.0 ve sonrasında kullanımı önerilmemektedir.
assert.quiet_eval "0" INI_ALL PHP 8.0.0 sürümünde kaldırıldı.
assert.exception "1" INI_ALL PHP 8.0.0 öncesinde "0" öntanımlıydı. PHP 8.3.0 ve sonrasında kullanımı önerilmemektedir.
enable_dl "1" INI_SYSTEM Bu kullanımı önerilmeyen özellik gelecekte kesinlikle KALDIRILACAKTIR.
max_execution_time "30" INI_ALL  
max_input_time "-1" INI_PERDIR PHP 4.3.0 ve sonrasında kullanılabilir.
max_input_nesting_level "64" INI_PERDIR  
max_input_vars 1000 INI_PERDIR  
zend.enable_gc "1" INI_ALL  

INI_* kiplerinin tanımları ve ayrıntılı açıklamaları Yapılandırma ayarlarının yeri bölümünde bulunabilir.

Yapılandırma yönergelerinin kısa açıklamalarını aşağıda bulabilirsiniz.

assert.active bool

assert() değerlendirmesini etkin kılar. assert() işlevinin davranışını denetlemek yerine zend.assertions kullanılmalıdır.

Uyarı

Bu özelliğin kullanımı PHP 8.3.0 itibariyle ÖNERİLMEMEKTEDİR. Bu özelliğe kesinlikle güvenilmemelidir.

assert.bail bool

Kararlılık denetimleri başarısız olduğunda betiğin çalışmasını sonlandırır.

Uyarı

Bu özelliğin kullanımı PHP 8.3.0 itibariyle ÖNERİLMEMEKTEDİR. Bu özelliğe kesinlikle güvenilmemelidir.

assert.warning bool

Başarısız olan her kararlılık denetimi için bir PHP uyarısı çıktılar.

Uyarı

Bu özelliğin kullanımı PHP 8.3.0 itibariyle ÖNERİLMEMEKTEDİR. Bu özelliğe kesinlikle güvenilmemelidir.

assert.callback string

Kararlılık denetimleri başarısız olduğunda çağrılacak kullanıcı işlevi.

Uyarı

Bu özelliğin kullanımı PHP 8.3.0 itibariyle ÖNERİLMEMEKTEDİR. Bu özelliğe kesinlikle güvenilmemelidir.

assert.quiet_eval bool
Uyarı

Bu özellik PHP 8.0.0 sürümünde KALDIRILMIŞTIR.

Kararlılık denetimini sağlayan ifadenin değerlendirilmesi sırasında error_reporting() işlevinin o anki ayarları kullanılır. Etkin olduğunda değerlendirme sırasında hiçbir hata gösterilmez (örtük error_reporting(0)). Aksi takdirde, hatalar error_reporting() ayarlarına uygun olarak gösterilir.

assert.exception bool

Kararlılık denetimleri başarısız olduğunda AssertionError istisnası çalıştırılır.

Uyarı

Bu özelliğin kullanımı PHP 8.3.0 itibariyle ÖNERİLMEMEKTEDİR. Bu özelliğe kesinlikle güvenilmemelidir.

enable_dl bool

Bu yönerge ile PHP eklentilerinin dl() işleviyle sanal konak veya dizin temelinde dinamik olarak yüklenip yüklenmeyeceğini belirler.

Dinamik yüklemenin devre dışı bırakılmasının asıl sebebi güvenliktir. Dinamik yükleme ile, tüm open_basedir sınırlamalarını yok saymak mümkündür. Dinamik yüklemeye öntanımlı olarak izin verilir.

max_execution_time int

Çözümleyici tarafından sonlandırılmadan önce bir betiğin çalışabileceği azami süreyi saniye cinsinden tanımlar. Bu, yetersizce yazılmış betiklerin sunucuya bağlanmasına engel olur. Öntanımlı süre 30 saniyedir. PHP komut satırından çalıştırıldığında bu süre 0 saniyedir.

Windows sistemlerinde azami çalışma süresi sistem çağrılarından, akım işlemlerinden ve benzerlerinden etkilenmez. Daha ayrıntılı bilgi için set_time_limit() işlevinin açıklamasına bakınız.

HTTP sunucunuzun PHP'nin çalışmasını kesintiye uğratacak başka zaman aşımı yapılandırmaları olabilir. Apache'nin bir Timeout yönergesi ve IIS'nin bir CGI zaman aşımı işlevi vardır. Bu konuda daha ayrıntılı bilgi edinmek için HTTP sunucunuzun belgelerine bakınız.

max_input_time int

Bir betiğin POST ve GET gibi girdileri çözümlemesi için gereken azami süre saniye cinsinden burada belirtilir. Süre, sunucu PHP'yi çağırdığı an başlar betik çalışmaya başladığı an biter. Öntanımlı değeri -1 olup, yerine max_execution_time kullanıldığı anlamına gelir. Zamanı sınırsız yapmak için 0 atayın.

max_input_nesting_level int

girdi değişkenlerinin ($_GET, $_POST... gibi) azami iç içelik derinliğini ayarlar.

max_input_vars int

Kabul edilebilecek girdi değişkenlerinin sayısı (Bu sınırlama $_GET, $_POST and $_COOKIE değişkenlerine ayrı ayrı uygulanır.). Çırpı çatışmalarını kullanan hizmet reddi saldırıları olasılığını azaltmak için kullanılır. Bu yönergede belirtilenden daha fazla girdi değişkeni varsa bir E_WARNING çıktılanır ve istekteki fazla değişkenler yoksayılır.

zend.enable_gc bool

Döngüsel gönderim toplayıcısını açıp kapar.

add a note add a note

User Contributed Notes 4 notes

up
21
rubo77
11 years ago
I think it is important to mention that some distributions apply bugfixes for older versions so "Available since PHP 5.3.9" is not reliable, for example:
debian squeeze implemented the directive max_input_vars in PHP 5.3.3-7+squeeze7 (see http://ftp-master.metadata.debian.org/changelogs/main/p/php5/php5_5.3.3-7+squeeze17_changelog )
up
1
csongor at halmai dot hu
4 years ago
The max_input_vars setting is defined as "How many input variables may be accepted" but this is not completely correct. There is a +1 factor.

For example, if the value is 2 then the $_POST array can have up to 3 elements, if it is 1000 then it can have 1001 elements, and so on.

I want to stop the execution of the php code when there is a chance that some data was not received. Therefore, instead of relying on the standard E_WARNING, I do this in my code.

<?php
$max_input_vars
= ini_get('max_input_vars');
if (
count($_POST) === $max_input_vars + 1) {   // note the +1 here
   
throw new Exception();
}
?>

If the size of the $_POST array reaches the maximum then there is the chance that there was more data so it is better to stay on the safe side and increase the config value.
up
-4
horst at pepperzak.com
13 years ago
Caution: Although magic_quotes_gpc is flagged as dreprecated the default value is still "ON". So you will explicitly have to put

magic_quotes_gpc = Off

into your php.ini. Commeting out the magic_quotes_gpc-line will not turn magic_quotes_gpc off.
up
-86
Anonymous
10 years ago
The max_input_vars limit can be overcome by reading the input in raw, i.e.:
<?php
  $sRawInputData
= fopen( 'php://input' );
?>
To Top