• 23-02-2022, 13:00:11
    #10
    $f = file_get_contents('file.txt');
    $file = explode(PHP_EOL, $f);
    
    $searchValue = 'Mehmet';
    
    // Burası kapatmak için
    foreach ($file as &$item) {
        if (mb_strtolower(ltrim($item, '; ')) == mb_strtolower($searchValue)) {
            $item = ';' . ltrim($item, '; ');
            break;
        }
    }
    ####################
    // Burası açmak için
    foreach ($file as &$item) {
        if (stripos(mb_strtolower($item), mb_strtolower($searchValue))) {
            $item = ltrim($item, '; ');
            break;
        }
    }
    ###################
    
    // Buradaki kodları aynı anda çalıştırmaya çalışırsan son olarak ikinci blok çalışacağı için noktalı virgül eklenmez, ayrı ayrı çalıştır
    file_put_contents('file.txt', implode(PHP_EOL, $file));
  • 23-02-2022, 14:26:11
    #11
    Metin başına noktalı virgül yerine dosyayı .json uzantılı ve JSON formatında kullansanız daha iyi olmaz mı. Yani aşağıda senaryoyu basit tutuyorum da örnek vermek için. status değerleri açık yada kapalı olması için.

    <?php
    $veriler = json_decode(file_get_contents('veriler.json'), TRUE);
    
    if ( ! isset($veriler[ 'ahmet' ]))
        $veriler['ahmet'] = array('displayname' => 'Ahmet', 'status' => 0);
    if ( ! isset($veriler[ 'burak' ]))
        $veriler['burak'] = array('displayname' => 'Burak', 'status' => 0);
    
    file_put_contents('veriler.json', json_encode($veriler));
    ?>

    ardakarakas adlı üyeden alıntı: mesajı görüntüle
    Yani şöyle 2 tane butonum olacak birincisi aç ikincisi kapat
    aç butonuna basınca ajax ile post yolluyorum ona gelen veri diyorum işte aç butonuna basınca başındaki noktalı virgülü yukarıda anlattığım gibi kaldıracak
    kapat tuşuna basınca noktalı virgül koyacak