Sponsored Content
Full Discussion: Unix Network Programming
Top Forums UNIX for Dummies Questions & Answers Unix Network Programming Post 44724 by Perderabo on Wednesday 10th of December 2003 07:57:48 AM
Old 12-10-2003
When Rich wrote the 2nd edition he added over 500 pages of material expanding the book into two volumes. Anytime you redo a project like that it gets better. But I don't agree that the first edition has fewer typos. The 2nd edition was too massive of a revision.

Now that Rich is no longer with us, two other guys have taken over the project. The first volume of edition 3 is out. I was browsing it at the bookstore. Among the new subjects I noticed: IPv6, Virtual Networks, Datalink programming, IPsec, and SCTP.

I'm going to get edition 3 and that's what I recommend. The only reason to go with edition 1 is to save money. You could probably pick one up cheap on ebay.
 

10 More Discussions You Might Find Interesting

1. Programming

Network Programming in Unix

Good day everyone, Please help if you are interested in. I need to do a chat client-server program. Does anyone know where I can get references or sample programs? Thank you very much for your time Eric (2 Replies)
Discussion started by: powermind
2 Replies

2. UNIX for Dummies Questions & Answers

Unix and Linux Network Programming

I want to develop a hybrid IM application which will consist of a chat and an offline messaging (BBS) part. Server must support Multiple connection (concurrent) Arguments should not be hard coded (code will be checked at different machines) No input at the command line Must run in the... (3 Replies)
Discussion started by: never mind
3 Replies

3. UNIX for Dummies Questions & Answers

Wireless network programming in Unix (question)

Greetings everyone, I've been using OpenWRT for some time primarly for research in the University. I've also started with some basic network programming (sending UDP packets for instance). But since most of the available tutorials on unix network programming are more related to ethernet... (4 Replies)
Discussion started by: aztroboy
4 Replies

4. Programming

Unix network programming

Hi! I am working on fedora.. trying to execute BSD4.4 client-server program which includes "unp.h" header file... While executing make command, I got error like, " expected " , " , " ; ",or ")" in connect_nonb file...ERROR 1 " I tried to change mode of makefile but I can't get... (4 Replies)
Discussion started by: nisha_vaghela
4 Replies

5. Programming

Unix Network Programming

I have written a client-server program which does some data from a file in server to the client. In this I don't want the client to wait indefinitely if server is not running. For this I am using SELECT system call, in this system call we can specify timings as an argument, which tells the client... (2 Replies)
Discussion started by: naresh046
2 Replies

6. UNIX for Dummies Questions & Answers

How does unix system administration, unix programming, unix network programming differ?

How does unix system administration, unix programming, unix network programming differ? Please help. (0 Replies)
Discussion started by: thulasidharan2k
0 Replies

7. IP Networking

Network programming on UNIX env on windows

Hi, I have to start doing network programming in C/Unix but I have windows installed. Could someone please guide me how to set up the environment best suited for the networking programming? Regards Vinayak (1 Reply)
Discussion started by: vinayakj20
1 Replies

8. Programming

UNIX Network Programming making files problem

I have started reading the book Unix Network Programming, Volume 1: The Sockets Networking API. I downloaded all the source code and the readme says I must make the files. zuro@zuro:~/book/unpv12e$ cd lib zuro@zuro:~/book/unpv12e/lib$ make gcc -g -O2 -D_REENTRANT -Wall -c -o... (5 Replies)
Discussion started by: xuro
5 Replies

9. Programming

UNIX network programming execution problem

I have started reading the book Unix Network Programming, Volume 1: The Sockets Networking API. I downloaded all the source code and performed all the steps present in README file.Now when i compile my first program it give the following error. sainandan@nandan:~/unpv13e/intro$ ./daytimetcpcli... (1 Reply)
Discussion started by: bsainandan
1 Replies

10. UNIX for Advanced & Expert Users

Is it possible to understand the subjects of 2nd volume of UNIX Network Programming with APUE

Is it possible to study second volume of Unix Network Programming - Interprocess communication (by Stevense) with Advanced Programming in Unix Environment by the same author? I've got the idea that the topics/subjects in second volume has more to do with non network programming hence it seems... (0 Replies)
Discussion started by: vectrum
0 Replies
ARRAY_MULTISORT(3)							 1							ARRAY_MULTISORT(3)

array_multisort - Sort multiple or multi-dimensional arrays

SYNOPSIS
bool array_multisort (array &$array1, [mixed $array1_sort_order = SORT_ASC], [mixed $array1_sort_flags = SORT_REGULAR], [mixed $...]) DESCRIPTION
array_multisort(3) can be used to sort several arrays at once, or a multi-dimensional array by one or more dimensions. Associative ( string) keys will be maintained, but numeric keys will be re-indexed. PARAMETERS
o $array1 - An array being sorted. o $array1_sort_order - The order used to sort the previous array argument. Either SORT_ASC to sort ascendingly or SORT_DESC to sort descendingly. This argument can be swapped with $array1_sort_flags or omitted entirely, in which case SORT_ASC is assumed. o $array1_sort_flags - Sort options for the previous array argument: Sorting type flags: o SORT_REGULAR - compare items normally (don't change types) o SORT_NUMERIC - compare items numerically o SORT_STRING - compare items as strings o SORT_LOCALE_STRING - compare items as strings, based on the current locale. It uses the locale, which can be changed using setlocale(3) o SORT_NATURAL - compare items as strings using "natural ordering" like natsort(3) o SORT_FLAG_CASE - can be combined (bitwise OR) with SORT_STRING or SORT_NATURAL to sort strings case-insensitively This argument can be swapped with $array1_sort_order or omitted entirely, in which case SORT_REGULAR is assumed. o $... - More arrays, optionally followed by sort order and flags. Only elements corresponding to equivalent elements in previous arrays are compared. In other words, the sort is lexicographical. RETURN VALUES
Returns TRUE on success or FALSE on failure. CHANGELOG
+--------+---------------------------------------------------+ |Version | | | | | | | Description | | | | +--------+---------------------------------------------------+ | 5.4.0 | | | | | | | The SORT_NATURAL and SORT_FLAG_CASE were added | | | to $array1_sort_flags as possible sort flags. | | | | | 5.3.0 | | | | | | | The SORT_LOCALE_STRING was added to | | | $array1_sort_flags as possible sort flags. | | | | +--------+---------------------------------------------------+ EXAMPLES
Example #1 Sorting multiple arrays <?php $ar1 = array(10, 100, 100, 0); $ar2 = array(1, 3, 2, 4); array_multisort($ar1, $ar2); var_dump($ar1); var_dump($ar2); ?> In this example, after sorting, the first array will contain 0, 10, 100, 100. The second array will contain 4, 1, 2, 3. The entries in the second array corresponding to the identical entries in the first array (100 and 100) were sorted as well. array(4) { [0]=> int(0) [1]=> int(10) [2]=> int(100) [3]=> int(100) } array(4) { [0]=> int(4) [1]=> int(1) [2]=> int(2) [3]=> int(3) } Example #2 Sorting multi-dimensional array <?php $ar = array( array("10", 11, 100, 100, "a"), array( 1, 2, "2", 3, 1) ); array_multisort($ar[0], SORT_ASC, SORT_STRING, $ar[1], SORT_NUMERIC, SORT_DESC); var_dump($ar); ?> In this example, after sorting, the first array will transform to "10", 100, 100, 11, "a" (it was sorted as strings in ascending order). The second will contain 1, 3, "2", 2, 1 (sorted as numbers, in descending order). array(2) { [0]=> array(5) { [0]=> string(2) "10" [1]=> int(100) [2]=> int(100) [3]=> int(11) [4]=> string(1) "a" } [1]=> array(5) { [0]=> int(1) [1]=> int(3) [2]=> string(1) "2" [3]=> int(2) [4]=> int(1) } } Example #3 Sorting database results For this example, each element in the $data array represents one row in a table. This type of dataset is typical of database records. Example data: volume | edition -------+-------- 67 | 2 86 | 1 85 | 6 98 | 2 86 | 6 67 | 7 The data as an array, called $data. This would usually, for example, be obtained by looping with mysql_fetch_assoc(3). <?php $data[] = array('volume' => 67, 'edition' => 2); $data[] = array('volume' => 86, 'edition' => 1); $data[] = array('volume' => 85, 'edition' => 6); $data[] = array('volume' => 98, 'edition' => 2); $data[] = array('volume' => 86, 'edition' => 6); $data[] = array('volume' => 67, 'edition' => 7); ?> In this example, we will order by $volume descending, $edition ascending. We have an array of rows, but array_multisort(3) requires an array of columns, so we use the below code to obtain the columns, then perform the sorting. <?php // Obtain a list of columns foreach ($data as $key => $row) { $volume[$key] = $row['volume']; $edition[$key] = $row['edition']; } // Sort the data with volume descending, edition ascending // Add $data as the last parameter, to sort by the common key array_multisort($volume, SORT_DESC, $edition, SORT_ASC, $data); ?> The dataset is now sorted, and will look like this: volume | edition -------+-------- 98 | 2 86 | 1 86 | 6 85 | 6 67 | 2 67 | 7 Example #4 Case insensitive sorting Both SORT_STRING and SORT_REGULAR are case sensitive, strings starting with a capital letter will come before strings starting with a lowercase letter. To perform a case insensitive search, force the sorting order to be determined by a lowercase copy of the original array. <?php $array = array('Alpha', 'atomic', 'Beta', 'bank'); $array_lowercase = array_map('strtolower', $array); array_multisort($array_lowercase, SORT_ASC, SORT_STRING, $array); print_r($array); ?> The above example will output: Array ( [0] => Alpha [1] => atomic [2] => bank [3] => Beta ) SEE ALSO
usort(3), The comparison of array sorting functions. PHP Documentation Group ARRAY_MULTISORT(3)
All times are GMT -4. The time now is 07:12 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy