Create and download CSV in PHP
Consider the possibility of quickly creating a CSV file with automatic file download. Consider the formation, separators and header for the ability to download the file.
In order not to describe again, I give a link to the details . Based on this topic, we will try to start the worker through the console and give it some work through the client.
Let's make some changes to the code. Instead of saving data to a file, we will use console output.
file_put_contents("php://stdin", 'output string');
I will demonstrate the server.php file with the new changes.
<?php
$gmw = new GearmanWorker();
/**
* For now, consider the default initialization of addServer()
* This method is needed to declare which machine this worker is running on
*/
$gmw->addServer();
/**
* log_client - from the client side use this alice
* work_log - the function that the worker will throw on if
* something will come to alice log_client.
*/
$gmw->addFunction('log_client', 'work_log');
/**
* Specially done
* If you just declare $gmw->work(), then the task will end immediately
* after execution. That is, it will only work once.
*/
while($gmw->work());
/**
* Write logs to a file
* @param JSON $param - Accepts only a string, so pass it to json if needed
  ;*/
function work_log($param) {
/*Retrieves data sent by the client*/
$data = $param->workload();
/**
* We artificially create a load to simulate a long wait.
* Here we will see that the client script will not wait for the end of 100 seconds,
* and hang up the task and forget about it.
*/
for ($i = 0; $i < 100; $i++) {
sleep(1);
file_put_contents("php://stdin", $data); // Changed for console output
}
}
Launching from the console is done like this (our project is in the /var/www/test1.loc directory):
php /var/www/test1.loc/server.php
This line in the console will hang the worker on hold. It will wait until the console closes or the max_input_time in php.ini times out.
It can be seen that the console is waiting (Warning indicates a possible problem in the Gearman library itself). After running client.php , you can clearly see that everything is completed in the browser, and the console works by itself. If you close the console and then start the worker again, it will continue to work from the moment it left off.
Consider the possibility of quickly creating a CSV file with automatic file download. Consider the formation, separators and header for the ability to download the file.
Latest templates from ImageCMS 4.12, authorization is required to download.
Consider options for popular options for storing goods in a shopping cart in an online store. Let's outline the pros and cons of such storage. Consider options for long-term storage of the basket.
Creating a key for imageCMS 4.9-4.12.1 Pro and Pre. You must be logged in to receive it.
When running the script from the console, there is no DOCUMENT_ROOT in $_SERVER. Let's try to get around this in our own ways, catch the file directory.
After developing any tool in PHP, the question becomes how resourceful the created code is and what elements it still affects. Let's take a look at xhprof installation, configuration, and how to work with xhprof.
Let's analyze the possibility of combining conditions in a query by groups in Propel. Consider an example of filtering by fields using ->condition() and ->combine().
Faced the problem of authorization 1s on the site. For some reason, the server did not accept the PHP_AUTH_USER and PHP_AUTH_PW parameters from it. Let's take a closer look at the solution and bypassing these parameters in $_SERVER .